【2013 省赛试题】马虎的算式


文章目录


马虎的算式

小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36×495?他却给抄成了:396×45=?但结果却很戏剧性,他的答案竟然是对的!

  • 因为36×495=396×45=17820,类似这样的巧合情况可能还有很多,比如:27×594=297×54。
  • 假设代表1~9不同的5个数字(注意是各不相同的数字),且不含0,能满足形如:ab×cde= adb×ce 这样的算式一共有多少种呢?

请你利用计算机的优势寻找所有的可能,并回答不同算式的种类数。 满足乘法交换律的算式计为不同的种类,所以答案肯定是个偶数。

通过读了题干,很明显,这是一道多变量的组合问题。对于这种多变量的问题,尽量将变量单独声明,方便后续的操作。如果将变量放在一组或一个中,后续还要进行拆分,会很麻烦。

  • 本题主要思路就是利用五层for循环,来代表5个变量,并加以限制,最终求取结果
  • 线索一:注意是各不相同的数字(a、b、c、d、e均不相等)
  • 线索二:ab×cde= adb×ce
public class Test01_2013马虎的算式 {
    
    
    public static void main(String[] args) {
    
    
        // 计数器
        int count = 0;
        // 利用多重循环
        for (int a = 1; a < 10; a++) {
    
    
            for (int b = 1; b < 10; b++) {
    
    
                if (a != b) {
    
    
                    for (int c = 1; c < 10; c++) {
    
    
                        if (a != c && b != c){
    
    
                            for (int d = 1; d < 10; d++) {
    
    
                                if (a != d && b != d && c != d){
    
    
                                    for (int e = 1;e < 10; e++){
    
    
                                        if (a !=e && b !=e && c !=e && d !=e){
    
    
                                            if((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e)){
    
    
                                                System.out.printf("(%d*10+%d)*(%d*100+%d*10+%d)=(%d*100+%d*10+%d)*(%d*10+%d)="+(a*10+b)*(c*100+d*10+e),a,b,c,d,e,a,d,b,c,e);
                                                System.out.println("");
                                                count++;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        System.out.println("共有"+ count +"种");
    }
}

(1*10+4)*(2*100+5*10+3)=(1*100+5*10+4)*(2*10+3)=3542
(1*10+4)*(3*100+5*10+2)=(1*100+5*10+4)*(3*10+2)=4928
(1*10+4)*(5*100+3*10+6)=(1*100+3*10+4)*(5*10+6)=7504
(1*10+4)*(9*100+3*10+8)=(1*100+3*10+4)*(9*10+8)=13132
(1*10+5)*(2*100+6*10+4)=(1*100+6*10+5)*(2*10+4)=3960
(1*10+5)*(4*100+6*10+2)=(1*100+6*10+5)*(4*10+2)=6930
(1*10+6)*(2*100+3*10+8)=(1*100+3*10+6)*(2*10+8)=3808
(1*10+6)*(2*100+7*10+5)=(1*100+7*10+6)*(2*10+5)=4400
(1*10+6)*(2*100+9*10+4)=(1*100+9*10+6)*(2*10+4)=4704
(1*10+6)*(3*100+7*10+4)=(1*100+7*10+6)*(3*10+4)=5984
(1*10+6)*(3*100+9*10+2)=(1*100+9*10+6)*(3*10+2)=6272
(1*10+6)*(4*100+7*10+3)=(1*100+7*10+6)*(4*10+3)=7568
(1*10+6)*(5*100+7*10+2)=(1*100+7*10+6)*(5*10+2)=9152
(1*10+7)*(2*100+8*10+6)=(1*100+8*10+7)*(2*10+6)=4862
(1*10+7)*(3*100+8*10+5)=(1*100+8*10+7)*(3*10+5)=6545
(1*10+7)*(3*100+9*10+4)=(1*100+9*10+7)*(3*10+4)=6698
(1*10+7)*(5*100+8*10+3)=(1*100+8*10+7)*(5*10+3)=9911
(1*10+7)*(6*100+8*10+2)=(1*100+8*10+7)*(6*10+2)=11594
(1*10+8)*(2*100+9*10+7)=(1*100+9*10+8)*(2*10+7)=5346
(1*10+8)*(3*100+9*10+6)=(1*100+9*10+8)*(3*10+6)=7128
(1*10+8)*(4*100+9*10+5)=(1*100+9*10+8)*(4*10+5)=8910
(1*10+8)*(5*100+9*10+4)=(1*100+9*10+8)*(5*10+4)=10692
(1*10+8)*(6*100+9*10+3)=(1*100+9*10+8)*(6*10+3)=12474
(1*10+8)*(7*100+9*10+2)=(1*100+9*10+8)*(7*10+2)=14256
(2*10+3)*(1*100+5*10+4)=(2*100+5*10+3)*(1*10+4)=3542
(2*10+3)*(4*100+5*10+1)=(2*100+5*10+3)*(4*10+1)=10373
(2*10+4)*(1*100+6*10+5)=(2*100+6*10+4)*(1*10+5)=3960
(2*10+4)*(1*100+9*10+6)=(2*100+9*10+4)*(1*10+6)=4704
(2*10+4)*(5*100+6*10+1)=(2*100+6*10+4)*(5*10+1)=13464
(2*10+4)*(9*100+3*10+6)=(2*100+3*10+4)*(9*10+6)=22464
(2*10+5)*(1*100+7*10+6)=(2*100+7*10+5)*(1*10+6)=4400
(2*10+5)*(3*100+7*10+4)=(2*100+7*10+5)*(3*10+4)=9350
(2*10+5)*(4*100+7*10+3)=(2*100+7*10+5)*(4*10+3)=11825
(2*10+5)*(6*100+7*10+1)=(2*100+7*10+5)*(6*10+1)=16775
(2*10+6)*(1*100+8*10+7)=(2*100+8*10+6)*(1*10+7)=4862
(2*10+6)*(3*100+8*10+5)=(2*100+8*10+6)*(3*10+5)=10010
(2*10+6)*(5*100+8*10+3)=(2*100+8*10+6)*(5*10+3)=15158
(2*10+6)*(7*100+8*10+1)=(2*100+8*10+6)*(7*10+1)=20306
(2*10+7)*(1*100+9*10+8)=(2*100+9*10+7)*(1*10+8)=5346
(2*10+7)*(3*100+9*10+6)=(2*100+9*10+7)*(3*10+6)=10692
(2*10+7)*(4*100+9*10+5)=(2*100+9*10+7)*(4*10+5)=13365
(2*10+7)*(5*100+9*10+4)=(2*100+9*10+7)*(5*10+4)=16038
(2*10+7)*(6*100+9*10+3)=(2*100+9*10+7)*(6*10+3)=18711
(2*10+7)*(8*100+9*10+1)=(2*100+9*10+7)*(8*10+1)=24057
(2*10+8)*(1*100+3*10+6)=(2*100+3*10+8)*(1*10+6)=3808
(2*10+8)*(4*100+6*10+9)=(2*100+6*10+8)*(4*10+9)=13132
(2*10+8)*(5*100+9*10+6)=(2*100+9*10+8)*(5*10+6)=16688
(3*10+2)*(1*100+5*10+4)=(3*100+5*10+2)*(1*10+4)=4928
(3*10+2)*(1*100+9*10+6)=(3*100+9*10+2)*(1*10+6)=6272
(3*10+2)*(4*100+5*10+1)=(3*100+5*10+2)*(4*10+1)=14432
(3*10+4)*(1*100+7*10+6)=(3*100+7*10+4)*(1*10+6)=5984
(3*10+4)*(1*100+9*10+7)=(3*100+9*10+4)*(1*10+7)=6698
(3*10+4)*(2*100+7*10+5)=(3*100+7*10+4)*(2*10+5)=9350
(3*10+4)*(5*100+7*10+2)=(3*100+7*10+4)*(5*10+2)=19448
(3*10+4)*(5*100+9*10+1)=(3*100+9*10+4)*(5*10+1)=20094
(3*10+4)*(6*100+7*10+1)=(3*100+7*10+4)*(6*10+1)=22814
(3*10+5)*(1*100+8*10+7)=(3*100+8*10+5)*(1*10+7)=6545
(3*10+5)*(2*100+8*10+6)=(3*100+8*10+5)*(2*10+6)=10010
(3*10+5)*(6*100+8*10+2)=(3*100+8*10+5)*(6*10+2)=23870
(3*10+5)*(7*100+8*10+1)=(3*100+8*10+5)*(7*10+1)=27335
(3*10+6)*(1*100+9*10+8)=(3*100+9*10+6)*(1*10+8)=7128
(3*10+6)*(2*100+9*10+7)=(3*100+9*10+6)*(2*10+7)=10692
(3*10+6)*(4*100+9*10+5)=(3*100+9*10+6)*(4*10+5)=17820
(3*10+6)*(5*100+9*10+4)=(3*100+9*10+6)*(5*10+4)=21384
(3*10+6)*(7*100+9*10+2)=(3*100+9*10+6)*(7*10+2)=28512
(3*10+6)*(8*100+9*10+1)=(3*100+9*10+6)*(8*10+1)=32076
(3*10+8)*(5*100+9*10+7)=(3*100+9*10+8)*(5*10+7)=22686
(3*10+8)*(7*100+9*10+6)=(3*100+9*10+8)*(7*10+6)=30248
(4*10+1)*(2*100+5*10+3)=(4*100+5*10+1)*(2*10+3)=10373
(4*10+1)*(3*100+5*10+2)=(4*100+5*10+1)*(3*10+2)=14432
(4*10+2)*(1*100+6*10+5)=(4*100+6*10+2)*(1*10+5)=6930
(4*10+2)*(5*100+6*10+1)=(4*100+6*10+2)*(5*10+1)=23562
(4*10+3)*(1*100+7*10+6)=(4*100+7*10+3)*(1*10+6)=7568
(4*10+3)*(2*100+7*10+5)=(4*100+7*10+3)*(2*10+5)=11825
(4*10+3)*(5*100+7*10+2)=(4*100+7*10+3)*(5*10+2)=24596
(4*10+3)*(6*100+7*10+1)=(4*100+7*10+3)*(6*10+1)=28853
(4*10+5)*(1*100+9*10+8)=(4*100+9*10+5)*(1*10+8)=8910
(4*10+5)*(2*100+9*10+7)=(4*100+9*10+5)*(2*10+7)=13365
(4*10+5)*(3*100+9*10+6)=(4*100+9*10+5)*(3*10+6)=17820
(4*10+5)*(6*100+9*10+3)=(4*100+9*10+5)*(6*10+3)=31185
(4*10+5)*(7*100+9*10+2)=(4*100+9*10+5)*(7*10+2)=35640
(4*10+5)*(8*100+9*10+1)=(4*100+9*10+5)*(8*10+1)=40095
(4*10+9)*(2*100+6*10+8)=(4*100+6*10+9)*(2*10+8)=13132
(5*10+1)*(2*100+6*10+4)=(5*100+6*10+1)*(2*10+4)=13464
(5*10+1)*(3*100+9*10+4)=(5*100+9*10+1)*(3*10+4)=20094
(5*10+1)*(4*100+6*10+2)=(5*100+6*10+1)*(4*10+2)=23562
(5*10+2)*(1*100+7*10+6)=(5*100+7*10+2)*(1*10+6)=9152
(5*10+2)*(3*100+7*10+4)=(5*100+7*10+2)*(3*10+4)=19448
(5*10+2)*(4*100+7*10+3)=(5*100+7*10+2)*(4*10+3)=24596
(5*10+2)*(6*100+7*10+1)=(5*100+7*10+2)*(6*10+1)=34892
(5*10+2)*(9*100+3*10+1)=(5*100+3*10+2)*(9*10+1)=48412
(5*10+3)*(1*100+8*10+7)=(5*100+8*10+3)*(1*10+7)=9911
(5*10+3)*(2*100+8*10+6)=(5*100+8*10+3)*(2*10+6)=15158
(5*10+3)*(6*100+8*10+2)=(5*100+8*10+3)*(6*10+2)=36146
(5*10+3)*(7*100+8*10+1)=(5*100+8*10+3)*(7*10+1)=41393
(5*10+4)*(1*100+9*10+8)=(5*100+9*10+4)*(1*10+8)=10692
(5*10+4)*(2*100+9*10+7)=(5*100+9*10+4)*(2*10+7)=16038
(5*10+4)*(3*100+9*10+6)=(5*100+9*10+4)*(3*10+6)=21384
(5*10+4)*(6*100+9*10+3)=(5*100+9*10+4)*(6*10+3)=37422
(5*10+4)*(7*100+9*10+2)=(5*100+9*10+4)*(7*10+2)=42768
(5*10+4)*(8*100+9*10+1)=(5*100+9*10+4)*(8*10+1)=48114
(5*10+6)*(1*100+3*10+4)=(5*100+3*10+6)*(1*10+4)=7504
(5*10+6)*(2*100+9*10+8)=(5*100+9*10+6)*(2*10+8)=16688
(5*10+6)*(8*100+9*10+4)=(5*100+9*10+6)*(8*10+4)=50064
(5*10+6)*(9*100+3*10+8)=(5*100+3*10+6)*(9*10+8)=52528
(5*10+7)*(3*100+9*10+8)=(5*100+9*10+7)*(3*10+8)=22686
(6*10+1)*(2*100+7*10+5)=(6*100+7*10+1)*(2*10+5)=16775
(6*10+1)*(3*100+7*10+4)=(6*100+7*10+1)*(3*10+4)=22814
(6*10+1)*(4*100+7*10+3)=(6*100+7*10+1)*(4*10+3)=28853
(6*10+1)*(5*100+7*10+2)=(6*100+7*10+1)*(5*10+2)=34892
(6*10+2)*(1*100+8*10+7)=(6*100+8*10+2)*(1*10+7)=11594
(6*10+2)*(3*100+8*10+5)=(6*100+8*10+2)*(3*10+5)=23870
(6*10+2)*(5*100+8*10+3)=(6*100+8*10+2)*(5*10+3)=36146
(6*10+2)*(7*100+8*10+1)=(6*100+8*10+2)*(7*10+1)=48422
(6*10+3)*(1*100+9*10+8)=(6*100+9*10+3)*(1*10+8)=12474
(6*10+3)*(2*100+9*10+7)=(6*100+9*10+3)*(2*10+7)=18711
(6*10+3)*(4*100+9*10+5)=(6*100+9*10+3)*(4*10+5)=31185
(6*10+3)*(5*100+9*10+4)=(6*100+9*10+3)*(5*10+4)=37422
(6*10+3)*(7*100+9*10+2)=(6*100+9*10+3)*(7*10+2)=49896
(6*10+3)*(8*100+9*10+1)=(6*100+9*10+3)*(8*10+1)=56133
(7*10+1)*(2*100+8*10+6)=(7*100+8*10+1)*(2*10+6)=20306
(7*10+1)*(3*100+8*10+5)=(7*100+8*10+1)*(3*10+5)=27335
(7*10+1)*(5*100+8*10+3)=(7*100+8*10+1)*(5*10+3)=41393
(7*10+1)*(6*100+8*10+2)=(7*100+8*10+1)*(6*10+2)=48422
(7*10+2)*(1*100+9*10+8)=(7*100+9*10+2)*(1*10+8)=14256
(7*10+2)*(3*100+9*10+6)=(7*100+9*10+2)*(3*10+6)=28512
(7*10+2)*(4*100+9*10+5)=(7*100+9*10+2)*(4*10+5)=35640
(7*10+2)*(5*100+9*10+4)=(7*100+9*10+2)*(5*10+4)=42768
(7*10+2)*(6*100+9*10+3)=(7*100+9*10+2)*(6*10+3)=49896
(7*10+2)*(8*100+9*10+1)=(7*100+9*10+2)*(8*10+1)=64152
(7*10+6)*(3*100+9*10+8)=(7*100+9*10+6)*(3*10+8)=30248
(8*10+1)*(2*100+9*10+7)=(8*100+9*10+1)*(2*10+7)=24057
(8*10+1)*(3*100+9*10+6)=(8*100+9*10+1)*(3*10+6)=32076
(8*10+1)*(4*100+9*10+5)=(8*100+9*10+1)*(4*10+5)=40095
(8*10+1)*(5*100+9*10+4)=(8*100+9*10+1)*(5*10+4)=48114
(8*10+1)*(6*100+9*10+3)=(8*100+9*10+1)*(6*10+3)=56133
(8*10+1)*(7*100+9*10+2)=(8*100+9*10+1)*(7*10+2)=64152
(8*10+4)*(5*100+9*10+6)=(8*100+9*10+4)*(5*10+6)=50064
(9*10+1)*(5*100+3*10+2)=(9*100+3*10+1)*(5*10+2)=48412
(9*10+6)*(2*100+3*10+4)=(9*100+3*10+6)*(2*10+4)=22464
(9*10+8)*(1*100+3*10+4)=(9*100+3*10+8)*(1*10+4)=13132
(9*10+8)*(5*100+3*10+6)=(9*100+3*10+8)*(5*10+6)=52528
共有142

返回顶部


猜你喜欢

转载自blog.csdn.net/qq_45797116/article/details/113699057