Two squares or not two squares
Link to the question : TWOSQRS
HINT :
Logic seems very clear. Just we need check if the number can be represented as a sum of two squares or not. A little bit optimisation may be preferrable.
RECOMMENDED QUESTION :
Try solving this question .
SOURCE CODE :
#include<stdio.h>
#include<math.h>
void twosq(long long int x)
{
long long int i,j=0;
i= sqrt(x);
while(i>0) {
if(j*j>x)
{
printf("No\n");
break;
}
else if(i*i + j*j == x)
{
printf("Yes\n");
break;
}
else if(i*i + j*j <x)
j++;
else
i--;
}
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
long long int n;
scanf("%lld",&n);
twosq(n);
}
return 0;
}
No comments:
Post a Comment