hdu 5675 ztr loves math

来源:互联网 发布:淘宝新店查询软件 编辑:程序博客网 时间:2024/06/02 00:19

ztr loves math

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 483    Accepted Submission(s): 216


Problem Description
ztr loves research Math.One day,He thought about the "Lower Edition" of triangle equation set.Such as n=x2y2.

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<=106) indicating the number of test cases.

For each test case:each line contains a positive integer ,n<=1018.
 

Output
If there be a positive integer solutions,print True,else print False
 

Sample Input
462581105
 

Sample Output
FalseTrueTrueTrue
Hint
For the fourth case,$105 = 13^{2}-8^{2}$
 

Source
BestCoder Round #82 (div.2)




z=x^2-y^2,
令z=k^2+2*k*y   (y+k)^2=x^2;
若z为奇数,则令另k=1,z=1+2*y,(y>=1),所以z取大于1的所有奇数。
若z为偶数,显然k也必须偶数。z=4+4*y,则z取大于4且必须是4的倍数的数。
#include<stdio.h>#include<iostream>#include<string>#include<cstring>#include<algorithm>#include<map>#include<cmath>#define mv(a,b) memset(a,b,sizeof(a));using namespace std;typedef long long LL;const int maxn=10000+10;const double eps=1e-8;const double PI =acos(-1.0);int pos[maxn];int a,b;int fa[maxn];// char a[maxn],b[maxn];int main(){ //    ios_base::sync_with_stdio(false); //    freopen("input.txt","r",stdin);// freopen("output.txt","w",stdout);int T;    scanf("%d",&T);    while(T--)    {        LL m;        scanf("%I64d",&m);        if(m==1||m==4)        {        printf("False\n");        continue;        }        if(m%4==0||m%2!=0)            printf("True\n");        else            printf("False\n");    }}


 
0 0
原创粉丝点击