题目描述
如果,a是幸运数,b是幸运数,那么a+b+2也是幸运数。现在,告诉你两个幸运数a和b,请问c是不是幸运数。
输入
输入数据有多行组成,首先是一个整数N(0<N<1000),表示测试实列的个数,然后是N行数据,每行有3个正整数a,b,c(0<a, b<10000).
输出
对每个测试实例,如果能确定c是幸运数,那么输出"Yes.";否则输出"No."。
示例输入
2 2 3 5 8 11 21
示例输出
No. Yes.
///看着这个题特别简单,但用最简单的方法做,就是让a+b+2==c的话会一直wrong anser;
///所以这个题的深奧之处就是a,b可能是有幸运数组成的,例如a=e+f+2,b=g+h+2;则a,b,可能是有i个a,j个b组成,
#include<stdio.h>
#include<string.h>
int main()
{
int n,a,b,c,i,j;
scanf("%d",&n);
while(n--)
{
int flag=0;
scanf("%d%d%d",&a,&b,&c);
for(i=0;i<=c/a;i++)
{
for(j=0;j<=c/b;j++)
{
if(i*a+j*b+(i+j-1)*2==c)
{
printf("Yes.\n");
flag=1;
break;
}
}
if(flag==1)
{
break;
}
}
if(flag==0)
{
printf("No.\n");
}
}
return 0;
}