Cassels方程是一个在数论界产生了巨大影响的不定方程:x2 +y2 +z2=3xyz。该方程有无穷多自然数解。
本题并不是要你求解这个方程,只是判断给定的一组 (x,y,z) 是不是这个方程的解。
输入格式:
输入在第一行给出一个不超过 10 的正整数 N,随后 N 行,每行给出 3 个正整数 0<x≤y≤z≤1000。
输出格式:
对于每一组输入,如果是一组解,就在一行中输出 Yes,否则输出 No。
输入样例:
2
1 1 1
5 6 7
输出样例:
Yes
No
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int n,a,b,c;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a>>b>>c;
if(a*a+b*b+c*c==3*a*b*c)
cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}