蓝桥杯比赛题目:
三羊献瑞
观察下面的加法算式:
…祥 瑞 生 辉
.+三 羊 献 瑞
三 羊 生 瑞 气
(如果有对齐问题,可以参看【图1.jpg】)
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。
请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。
代码如下:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a = 1,b,c,d,e,f,g,h;//abcdefgh分别指的是三,祥,瑞,生,辉,羊,献,气
for(b = 0;b<10;b++)
{
for(c = 0;c<10;c++)
{
for(d = 0;d<10;d++)
{
for(e = 0;e<10;e++)
{
for(f = 0;f<10;f++)
{
for(g = 0;g<10;g++)
{
for(h = 0;h<10;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!=h
&& g!=h
&& b*1000+c*100+d*10+e+a*1000+f*100+g*10+c==a*10000+f*1000+d*100+c*10+h
)
{
cout<<1<<f<<g<<c<<endl;
}
}
}
}
}
}
}
}
}
代码一大串一大串的。
为啥“三”这个汉子直接是1呢
因为刚进位,所以肯定是1
答案是1085