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