蓝桥杯:三羊献瑞(答案不唯一)

目录

题目描述

题目分析:

测试用的代码(Java):

答案:

        因为我个人做选择题有把所有可能性列举的习惯,所以我习惯性列举一下,发现答案并不像题目里面说的,三羊献瑞是唯一的。具体看我的测试用例

Test:

但是结果呢?


题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

观察下面的加法算式:

      祥 瑞 生 辉
  +   三 羊 献 瑞
-------------------
   三 羊 生 瑞 气

其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。

请你输出“三羊献瑞”所代表的 4 位数字(答案唯一)。

题目分析:

        先看三, 四位数相加最大值也就是19998,所以三只能是1,接下来全部暴力遍历即可。

测试用的代码(Java):

import java.util.*;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Demo {
    public static void main(String[] args) {
        //填空题嘛,遇事不决,暴力枚举
        /*
          相同的汉字代表相同的数字,先捋一下
          A B C D + E F G B = E F C B H
          直接双层for走你
        */
        for(int a = 0 ;a<10;a++){
            for(int b = 0;b<10;b++){
                for(int c = 0;c<10;c++){
                    for(int d = 0;d<10;d++){
                        for(int e = 1;e<10;e++){
                            for(int f = 0;f<10;f++){
                                for(int g = 0;g<10;g++){
                                    for(int h = 0;h<10;h++){
                                        //先判断结果是否相同
                                        if( (a*1000+b*100+c*10+d)+(e*1000+f*100+g*10+b) == (e*10000+f*1000+c*100+b*10+h) ){
                                            //满足条件,在判断数字是否相同
                                            //a
                                            if(a!=b && a!=c && a!=d && a!=e && a!=f && a!=g && a!=h){
                                                //b
                                                if(b!=c && b!=d && b!=e && b!=f && b!=g && b!=h){
                                                    //c
                                                    if(c!=d && c!=e && c!=f && c!=g && c!=h){
                                                        //e
                                                        if(e!=f && e!=g && e!=h){
                                                            //f
                                                            if(f!=g && f!=h){
                                                                //g
                                                                if(g!=h){
                                                                    System.out.println("-----------------------");
                                                                    System.out.println("例子是:ABCD+EFGH=EFCBH");
                                                                    System.out.println("算式是:"+a+b+c+d+"+"+e+f+g+b+"="+e+f+c+b+h);
                                                                    //输出三羊献瑞,也就是EFGB
                                                                    System.out.println("答案是:"+e+""+f+""+g+""+b);
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

答案:

        因为我个人做选择题有把所有可能性列举的习惯,所以我习惯性列举一下,发现答案并不像题目里面说的,三羊献瑞是唯一的。具体看我的测试用例

Test:

        

 如果是我脑抽了,欢迎大家留言指出哈~

但是结果呢?

        1084,error.

        

        1085,AC.

        

        1086,error

         

我看不懂,但是我大受震撼。 

         

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值