有如下的加法算式。其中每个汉字代表一个数字。
(如存在对齐问题,可参见【图1.png】)
请填写“让我怎能过大年” 所代表的整数。
所有数字连在一起,中间不要空格。例如:“3125697”。当然,这个不是正确的答案。
注意:只填写一个整数,不要填写任何多余的内容。
思路:简单的加法竖式,思路也比较清晰。
最简单的方法暴力破解!
代码如下:
public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
for (int k = 0; k < 10; k++) {
for (int l = 0; l < 10; l++) {
for (int m = 0; m < 10; m++) {
for (int n = 0; n < 10; n++) {
for (int o = 0; o < 10; o++) {
if (i
+ (10 * j + i)
+ (100 * k + 10 * j + i)
+ (1000 * l + 100 * k + 10 * j + i)
+ (10000 * m + 1000 * l + 100 * k
+ 10 * j + i)
+ (100000 * n + 10000 * m + 1000
* l + 100 * k + 10 * j + i)
+ (1000000 * o + 100000 * n + 10000
* m + 1000 * l + 100 * k
+ 10 * j + i) == 1000000
* l + 100000 * l + 10000 * l + 1000
* l + 100 * l + 10 * l + l) {
System.out.println(1000000 * o + 100000
* n + 10000 * m + 1000 * l
+ 100 * k + 10 * j + i);
}
}
}
}
}
}
}
}
}