观察下面的加法算式:
祥 瑞 生 辉
+ 三 羊 献 瑞
-------------------
三 羊 生 瑞 气
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字
请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。
我的解法:我用的是暴力解法 但是没有答案输出 我找不到哪里错了 大佬看看
祥 瑞 生 辉
a b c d
+ 三 羊 献 瑞
e f g b
-------------------
三 羊 生 瑞 气
e f c b h
祥 和 三都不可能从0开始
```c
int main()
{
int a, b, c, d, e, f, g, h;
long sum1, sum2, sum3;
for (a = 1; a <=9; a++)
{
for (b = 0; b <= 9; b++)
{
for (c = 0; c <= 9; c++)
{
for (d = 0; d <= 9; d++)
{
for (e = 1; e <= 9; e++)
{
for (f = 0; f <= 9; f++)
{
for (g = 0; g <= 9; g++)
{
for (h = 0; h <= 9; h++)
{
if (a != b && a != c && a != d && a != e && a != f && a != g && a != h &&
b != c && b != d && b != e && b != f && b != g && b != h &&
c != d && c != e && c != f && c != g && c != h &&
d != e && d != f && d != g && d != h &&
e != f && e != g && e != h &&
f != g && f != g && f != h &&
g != h)
{
sum1 = a * 1000 + b * 100 + c * 10 + d;
sum2 = e * 1000 + f * 100 + g * 10 + h;
sum3 = e * 10000 + f * 1000 + c * 100 + b * 10 + h;
if ((sum1 + sum2) == sum3)
printf("%d", sum3);
}
}
}
}
}
}
}
}
}
return 0;
}