题目描述
宁宁参加奥数班,他遇到的第一个问题是这样的:口口口+口口口=口口口,宁宁需要将1~9 九个数分别填进对应的空格内,使等式成立。现在宁宁填了一个算式,你能帮他验证是否正确么?
输入
输入为多组测试数据。
分别输入三个三位数,依次表示等式里的三个数。
输出
如果等式成立,输出:YES!,否则输出:NO!
样例输入
173 286 459
样例输出
YES!
#include <stdio.h>
#include<math.h>
int main()
{
int f[10]={0};
f[a%10]++; //第一个三位数的个位十位百位都由0变成1
f[a/10%10]++;
f[a/100%10]++;
f[b].....
f[c].....
flag=1;
for(i=0;i<=9;i++)
{
if(f[i]!=1) //保证每个数都只用一遍
{
flag=0;
break;
}
}
if(flag && a+b==c)
printf...
return 0;
}
每个数只用一遍:先令数组每个数都=0,用到了再++,都用一遍即数组=1