题目
有如下的加法算式。其中每个汉字代表一个数字。
请填写“让我怎能过大年” 所代表的整数。 所有数字连在一起,中间不要空格。例如:“3125697”。当然,这个不是正确的答案。
注意:只填写一个整数,不要填写任何多余的内容。
解题思路
暴力破解
过程
public class action4 {
public static void main(String[] args) {
for (int n = 0; n < 10; n++) {
for (int d = 0; d < 10; d++) {
for (int g = 0; g < 10; g++) {
for (int N = 0; N < 10; N++) {
for (int z = 0; z < 10; z++) {
for (int w = 0; w < 10; w++) {
for (int r = 1; r < 10; r++) {
int sum=n*7+d*60+g*500+N*4000+z*30000+w*200000+r*1000000;//公式上面的和
int he=N*1111111;//公式结果的和
if (sum==he&&r!=w&&r!=z&&r!=N&&r!=g&&r!=d&&r!=n&&w!=z
&&w!=N&&w!=g&&w!=d&&w!=n&&z!=N&&z!=g&&z!=d&&z!=n
&&N!=g&&N!=g&&N!=d&&N!=n&&g!=d&&g!=n&&g!=n) {//判断满足算式并且每个数字不相同
System.out.print(r);
System.out.print(w);
System.out.print(z);
System.out.print(N);
System.out.print(g);
System.out.print(d);
System.out.print(n);
System.out.println();
}
}
}
}
}
}
}
}
}
}
答案
1572836