题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5018
思路:直接计算判断就是啦,注意一点要判断给出的A,B。。。。
code
#include<cstdio> #include<iostream> #include<cmath> #include<algorithm> #include<cstring> using namespace std; int main() { int F[1000]; int A,B,C,T,i; scanf("%d",&T); while(T--) { scanf("%d%d%d",&A,&B,&C); F[0]=A,F[1]=B; int flag=0; for(i=2;;i++) { F[i]=F[i-1]+F[i-2]; if(F[i]==C) { flag=1; break; } if(F[i]>C) { break; } } if(F[0]==C||F[1]==C) flag=1;//判断给出的A,B与C的关系 if(flag==1) { printf("Yes\n"); } else { printf("No\n"); } } return 0; }
原文地址:http://blog.csdn.net/u010304217/article/details/39403865