题目
三羊献瑞
思路分析
-
由于是填空题,没有时间和内存的要求,所以看到这个题,第一想法就是暴力破解,当然了,怎么快就怎么做。
-
由于 "三"是数字的首位,低位的数字进位后必然为1,所以能先确定 ”三“为1。
-
声明变量a,b,c,d,f,g,h。(分别代表:祥,瑞,生,辉,羊,献,气)。
-
题目要求求出三羊献瑞,即(1,f,g,b)。
代码实现
package com.atguigu.lanqiao;
public class Main { // 简单枚举
public static void main(String[] args) {
int a,b,c,d,f,g,h;
int numOne,numTwo,sum;
for(a=2;a<=9;a++)
{
for(b=0;b<=9;b++)
{
for(c=0;c<=9;c++)
{
for(d=0;d<=9;d++)
{
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!=f && a!=g && a!=h
&& b!=c && b!=d && b!=f && b!= g &&b!=h
&& c!=d && c!=f && c!= g && c!=h
&& d!=f && d!=g &&d!=h
&& f!=g && f!=h
&& g!=h
&& a!=1 && b!=1 && c!=1 && d!=1 && f!=1 && g!=1 && h!=1)
{
numOne=a*1000 + b*100 + c*10 + d;
numTwo=1*1000 + f*100 + g*10 + b;
sum=1*10000 + f*1000 + c*100 + b*10 + h;
if(sum==(numOne + numTwo))
{
System.out.print(1);
System.out.print(f);
System.out.print(g);
System.out.print(b);
}
}
}
}
}
}
}
}
}
}
}
答案
1085