package cn.dlpu.lby;
public class Gubaosuanshi {
/*
福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:
ABCDE * ? = EDCBA
他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”
华生:“我猜也是!”
于是,两人沉默了好久,还是没有算出合适的结果来。
请你利用计算机的优势,找到破解的答案。
把 ABCDE 所代表的数字写出来。
答案写在“解答.txt”中,不要写在这里!
*/
/*方法一:
* public static void main(String[] args) {
// TODO Auto-generated method stub
int a,b,c,d,e,f;
long start = System.currentTimeMillis();
for(a = 1;a<=9;a++){
for(b=0;b<=9;b++){
for(c=0;c<=9;c++){
for(d=0;d<=9;d++){
for(e=1;e<=9;e++){
for(f=1;f<=9;f++){
if(a!=b && a!=c && a!=d && a!=e && b!=c && b!=d && b!=e && c!=d && c!=e && d!=e && (10000*a+b*1000+c*100+d*10+e)*f == 10000*e+1000*d+100*c+10*b+a){
System.out.println((10000*a+b*1000+c*100+d*10+e)+ "X"+ f + "="+ (10000*e+1000*d+100*c+10*b+a));
}
}
}
}
}
}
}
long end = System.currentTimeMillis();
System.out.println(end-start);
}*/
//方法二:
public static void main(String[] args){
long start = System.currentTimeMillis();
for(int i=10000;i<100000;i++){
int a = i/10000;
int b = i%10000/1000;
int c = i%10000%1000/100;
int d = i%10000%1000%100/10;
int e = i%10;
if(a==b||a==c||a==d||a==e||b==c||b==d||b==e||c==d||c==e||d==e){
continue;
}
int y = e*10000+d*1000+c*100+b*10+a;
if(y%i==0){
System.out.println(i+"*"+y/i+"="+y);
}
}
long end = System.currentTimeMillis();
System.out.println(end-start);
}
}
古堡算式
最新推荐文章于 2022-04-08 19:24:00 发布