hdu 5675 ztr loves math(数学技巧)

时间:2021-12-23 22:34:24
Problem Description
ztr loves research Math.One day,He thought about the "Lower Edition" of triangle equation set.Such as n=x2−y2.

He wanted to know that ,for a given number n,is there a positive integer solutions?
Input
There are T test cases.
The first line of input contains an positive integer T(T<=) indicating the number of test cases. For each test case:each line contains a positive integer ,n<=.
Output
If there be a positive integer solutions,print True,else print False
 
Sample Input

Sample Output
False
True
True
True
Hint
For the fourth case,$ = ^{}-^{}$
给定nz,寻找是否存在一组(x,y),满足x^2-y^2=n,那么我们可以构造两个方程 即(k+1)^2-k^2=n和(k+1)^2-(k-1)^2=n,得出结论,当n为奇数或者4的倍数时,方程一定有正整数解,但要记得特判1和4
AC代码:
 #include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
#define ll long long
ll n;
int main()
{
int t;
scanf("%d",&t);
while(t--){
scanf("%I64d",&n);
if(n== || n==){
printf("False\n");
continue;
}
if(n%== || n%==){
printf("True\n");
}else{
printf("False\n");
}
}
return ;
}