把 ABCDE 所代表的数字写出来。
/* a b c d e * ? --------------- e d c b a 1,?==1,error 2,?==2,a<=4 3,e>=3 上述分析可缩小范围 */ #include<stdio.h> int main() { int a,b,c,d,e,f,s1,s2; for(a=1;a<=4;a++) for(b=0;b<=9;b++) for(c=0;c<=9;c++) for(d=0;d<=9;d++) for(e=3;e<=9;e++) for(f=2;f<=9;f++) { if((a!=b)&&(a!=c)&&(a!=d)&&(a!=e)&&(a!=f)&&(b!=c) &&(b!=d)&&(b!=e)&&(b!=f)&&(c!=d)&&(c!=e)&&(c!=f)&&(d!=e)&&(d!=f)&&(e!=f)) { s1=(a*10000+b*1000+c*100+d*10+e)*f; s2=(e*10000+d*1000+c*100+b*10+a); if(s1==s2) printf("%d %d %d %d %d",a,b,c,d,e); } } return 0; } 最后结果为:21978