测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A32028. 平方之和

填空题 较易

题目描述

平方之和

题目描述

小杨有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。

样例1

输入

2
5
4

输出

Yes
No

样例解释

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

数据范围

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

参考答案

import math def check(x): if x<=0: return False y = int(math.sqrt(x)) if y*y==x: return True return False t = int(input()) for ii in range(0,t): n = int(input()) fl = 0 for i in range(1,n+1): j = n-i*i if check(j): fl=1 break if fl==1: print("Yes") else: print("No")
上一题 下一题