官方
理解
每输入一个数 都看它是否是 a^2-b^2的形式
a^2-b^2的形式是什么意思呢?
a^2-b^2=(a+b)*(a-b)
当a,b都为偶数时,(a+b)(a-b)一定是4的倍数或者0,例如(4+2)(4-2)=12 (3+2)(2-2)=0
当a,b都为奇数时,(a+b)(a-b)一定是4的倍数或者0,例如(3+1)(3-1)=8 (1+1)(1-1)=0
当a,b一奇一偶时,(a+b)(a-b)一定是奇数,例如(2+1)*(2-1)=3
所以输入一个数 我们只需要看它是不是0或者是不是4的倍数 就可以看它是否符合 a^2-b^2的形式
code
#include <iostream>
using namespace std;
int main()
{
int n=0;
cin>>n;
for(int i=0;i<n;i++)
{
long long x;
cin>>x;
if(x%4==0||x%2==1)cout<<"Yes"<<" ";
else cout<<"No"<<" ";
}
return 0;
}