万卷网 > 题目详情
题型:编程题

平方之和

时间限制:1.0 s

内存限制:512.0 MB

题面描述

小杨有n个正整数a1,a2,...,an,他想知道对于所有的i(1≤i≤n),是否存在两个正整数x 和y满足x×x+y×y=ai。

输入格式

第一行包含一个正整数n,代表正整数数量。

之后n行,每行包含一个正整数,代表ai。

输出格式

对于每个正整数ai,如果存在两个正整数x和y满足x×x+y×y=ai,输出 Yes,否则输出 No。


输入样例

2
5
4

输出样例

Yes
No

样例解释

对于第一个正整数,存在1×1+2×2=5,因此答案为 Yes。

数据范围

对于全部数据,保证有1≤n≤10,1≤ai≤106。

更新时间:2025-05-14 10:16:41 |
【知识点】 CCF—GESP C++二级

相似题推荐

单选题

下面代码用来找出输入的N个正整数中最大的一个。如果将代码段用流程图来表示,则 L1 标记的代码行应 该使用的图形是( )。

int N, max=0, val; 
cin >> N; 

while(N){ 
    cin >> val; 
    if(val > max) // L1 
        max = val; 
    N--; 
} 
cout << max;
A.

圆形框

B.

椭圆形框

C.

平行四边形框

D.

菱形框

2026-09-29
判断题

下面C++代码段执行后将输出 0-3-6-9- 。 ( )

for (int i = 0; i < 10; i++){ 
    if (i % 3) 
        continue; 
    cout << i << "-"; 
}


A.正确 B.错误
2026-09-29
单选题

下面的 C++ 代码段正常执行后其输出的数字图形是( )。

for (i = 1; i < 5; i++){ 
    for (j = 1; j < i+1; j++) 
        cout << j; 
    cout << endl; 
}
A.

1

12

123

1234

B.

1

22

333

4444

C.

1

21

321

4321

D.

4

34

234

1234

2026-09-29
判断题

C++ 语句cout << ('4' % '2' == '2' * '2' % 2); 执行后的输出是1。( )

A.正确 B.错误
2026-09-29
单选题

下面 C++ 代码段执行后,其输出是( )。

int i, j, cnt; 
cnt = 0; 
for (i = 0; i < 5; i++){ 
    i = -i; for (j = i; j < -i; j++) cnt += 1; 
    i = -i; 
} 
cout << cnt;
A.

5

B.

15

C.

20

D.

30

2026-09-29
公众号
客服 反馈
顶部