三羊献瑞
观察下面的加法算式:
祥 瑞 生 辉
+ 三 羊 献 瑞
-------------------
三 羊 生 瑞 气
(如果有对齐问题,可以参看【图1.jpg】)
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。
请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。
思路:每个字代表一个数字,相同的字代表相同的数。
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
int a[10];
// int x,y,z;
for(int i=0;i<10;i++){
a[i]=i;
}
do{
if(!a[0]||!a[4])continue;
int x = a[0]*1000+a[1]*100+a[2]*10+a[3];
int y = a[4]*1000+a[5]*100+a[6]*10+a[1];
int z = a[4]*10000+a[5]*1000+a[2]*100+a[1]*10+a[7];
if(z==(x+y))
{
printf("%d\n",y);
break;
}
}while(next_permutation(a,a+10));
return 0;
}