题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
观察下面的加法算式:
祥 瑞 生 辉
+ 三 羊 献 瑞
-------------------
三 羊 生 瑞 气
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。
请你输出“三羊献瑞”所代表的 4 位数字(答案唯一)。
运行限制
最大运行时间:1s
最大运行内存: 128M
解题思路:
每个字分别用字母a-h表示,a-h从0-9依次开始遍历,求出符合条件的数。注意a-h各不相同,a,e不为0。
代码:
class Main{
public static void main(String[] args) {
int a,b,c,d,e,f,g,h;
for(a = 0;a<=9;a++) {
for(b = 0;b<=9;b++) {
for(c = 0;c<=9;c++) {
for(d=0;d<=9;d++) {
for(e = 0;e<=9;e++) {
for(f=0;f<=9;f++) {
for(g=0;g<=9;g++) {
for(h=0;h<=9;h++) {
if(a!=0&&e!=0&&//①
a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&b!=d&&b!=d&&b!=e&&b!=f&&b!=g&&b!=c&&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&&//②
(d+c*10+b*100+a*1000)+(b+g*10+f*100+e*1000)==h+b*10+c*100+f*1000+e*10000) {//③
System.out.println(b+g*10+f*100+e*1000);
}
}
}
}
}
}
}
}
}
}
}
答案:1085