[Official Events] 【新题】deepin论坛数学打卡赛!第四题发布!
Tofloor
poster avatar
deepin小助手
Super Moderator
OM
2024-06-24 09:48
Author

可点击阅读活动原帖,了解更多活动相关规则:deepin论坛数学打卡赛!解题有奖!

第一题跳转:deepin论坛数学打卡赛!第一题发布!

第二题跳转:deepin论坛数学打卡赛!第二题发布!

第三题跳转:deepin论坛数学打卡赛!第三题发布!

🔔 "deepin数学解题打卡赛"——第四题来啦!🔔

因原本的第四题引起歧义,现更新最新的第四题

📖 题目:

在一个古老的城堡里,有一个神秘的房间,里面藏有宝藏。房间的门上有一个密码锁,密码是一个四位数。城堡的守护者留下了一个线索,这个线索是一个数学表达式,表达式的结果是这个四位数密码。数学表达式如下:

其中A、B、C和D是1到9之间的整数,且每个数字只能使用一次。城堡的守护者还留下了另一个线索:A、B、C和D的和是16。

密码=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4)

请问,正确的四位数密码ABCD分别是什么呢?


记得把你的答案留在评论区,并通过本论坛将解题思路发私信至【deepin小助手】(也就是本发帖号),答案与解题思路都正确即可累计一分哦~!

提示:在深度论坛中将光标指向小编的论坛头像(即:本帖左上角的小浣熊)后,弹出的界面右下角会出现【发私信】字样,点击【发私信】,即可进入论坛私信发送窗口。


🎁 活动奖励

deepin社区周边套装:杯子+帆布袋+T恤+贴纸+鼠标垫+徽章+钥匙扣

默认标题__2024-06-20+17_22_17.jpg

❗️ 注意事项

1、 我们鼓励独立思考和公平竞争,请确保你的答案具有原创性,若发现完全重复的解答思路或公示期收到其他用户举报,一经核实将取消获奖资格;

2、 活动公示期间,获奖用户可以论坛私信联系【deepin小助手】提供礼品寄送地址信息,公示期结束后5个工作日内将完成所有获奖用户的礼品寄送;

3、 所有趣味题目,大家都可尝试使用编程来解,优秀的代码可能是解题的捷径;

4、 本活动最终解释权归deepin社区所有。

Reply Favorite View the author
All Replies
3 / 3
To page
xinaoshuijing
deepin
2024-06-25 23:42
#41

这题太麻烦了,光解题思路就发了四段话,我的乖乖啊!超大的计算量,超大陷阱,超多的陷阱,这题简直了,不过还好,解还是能解的,挺佩服31楼的程序,他的结果是对的,就是不知道他有没有发私信

Reply View the author
吴标
deepin
2024-06-26 06:16
#42

这个问题更有歧义吧,ABCD不可能是密码,另外从题义看A≥1,B≥2,C≥3,D≥4

正确的四位数密码ABCD分别是什么呢?如果数ABCD是密码,那公式B-2肯定是小于10的,100×(B-2)<1000,不可能进位,首位1000×(A-1)的千位是A-1,小于A,所以这个歧义更大。我举例2个数吧,A=1,B=2,C=4,D=9,密码0015,A=1,B=2,C=5,D=8,密码0024

Reply View the author
吴标
deepin
2024-06-26 06:21
#43

当然这题可加上密码也是A、B、C、D四位数组成的,有可能有结果,也有可能没结果,从目前题义看不止一个结果

Reply View the author
xiaoshuijing
deepin
2024-06-26 09:17
#44

这道题没有争议,只是答案不唯一,题里面明显的说了密码=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4),并没有说ABCD=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4),而且最后题目问的是正确的四位数密码ABCD分别是什么呢?,注意看这里有个词说的是分别,并没有说密码ABCD是什么,所以这就可以说明密码并不一定是ABCD。

Reply View the author
吴标
deepin
2024-06-26 09:36
#45
xiaoshuijing

这道题没有争议,只是答案不唯一,题里面明显的说了密码=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4),并没有说ABCD=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4),而且最后题目问的是正确的四位数密码ABCD分别是什么呢?,注意看这里有个词说的是分别,并没有说密码ABCD是什么,所以这就可以说明密码并不一定是ABCD。

好的我的理解分别是说ABCD四个数分别是什么,密码是ABCD四个数字组成的

Reply View the author
xiaoshuijing
deepin
2024-06-26 09:55
#46
吴标

好的我的理解分别是说ABCD四个数分别是什么,密码是ABCD四个数字组成的

其实如果密码是ABCD的话,那这题无解!

Reply View the author
子龙不秃头
deepin
2024-06-26 11:35
#47
It has been deleted!
子龙不秃头
deepin
2024-06-26 11:38
#48
申伟

写了程序也没有发现答案,不存在,是不是出错了

A#include 

//检测密码是否合符下面等式,
//密码=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4)
int check(int A, int B, int C, int D){

    int n[10] = {0};
    for(int i = 0;i < 10;i++){
        n[i] = 0;
    }
    int value = 1000*(A-1) + 100*(B-2) + 10*(C-3) + D - 4;
    int temp = value;
    for(int j = 0;j < 4;j++){
        int m = value % 10;
        n[m]++;
        value = value / 10;
    }

    //检测密码有没有出现,
    //密码=1000×(A−1)+100×(B−2)+10×(C−3)+(D−4)
    if(n[A] == 0){
        return 0;
    }
    if(n[B] == 0){
        return 0;
    }
    if(n[C] == 0){
        return 0;
    }
    if(n[D] == 0){
        return 0;
    }

    return temp;
}

int main(){

    int A,B,C,D;
    for(A = 1; A < 10;A++){
         for(B = 1;   B < 10;B++){
              for(C = 1;  C < 10;C++){
                   for(D = 1;  D < 10;D++){
                       int flag = (A != B) && (A != C) && (A != D) && (B != C) && (B != D) && (C != D);
                       int sum = A + B + C + D;
                       if(sum == 16 && flag){
                           int password;
                           if((password = check(A,B,C,D))){
                               printf("password:%d,A:%d,B:%d,C:%d,D:%d,\n",password,A,B,C,D);
                            }
                       }
                   }
              }
         }
    }
    printf("no found\n");
    return 0;
}

总之,是没有发现有密码

直接下边四层for循环,然后一个if就出来了,只不过密码不唯一,太多了

Reply View the author
子龙不秃头
deepin
2024-06-26 11:39
#49
吴标

这个问题更有歧义吧,ABCD不可能是密码,另外从题义看A≥1,B≥2,C≥3,D≥4

正确的四位数密码ABCD分别是什么呢?如果数ABCD是密码,那公式B-2肯定是小于10的,100×(B-2)<1000,不可能进位,首位1000×(A-1)的千位是A-1,小于A,所以这个歧义更大。我举例2个数吧,A=1,B=2,C=4,D=9,密码0015,A=1,B=2,C=5,D=8,密码0024

朋友,题目里面没有说abcd的大小顺序,所以更麻烦更多可能

Reply View the author
子龙不秃头
deepin
2024-06-26 11:44
#50
子龙不秃头

直接下边四层for循环,然后一个if就出来了,只不过密码不唯一,太多了

abcd不是密码的组成

Reply View the author
子龙不秃头
deepin
2024-06-26 11:45
#51

0024写一个吧,太多了

Reply View the author
吴标
deepin
2024-06-26 12:24
#52
子龙不秃头

朋友,题目里面没有说abcd的大小顺序,所以更麻烦更多可能

所以才说有歧义,答案多与没有答案都是不合适的。我觉得还有一种情况,就是有没有可能D-4<0,十位退位的情况,有的话可能ABCD四个数也是密码

Reply View the author
子龙不秃头
deepin
2024-06-26 12:41
#53
吴标

所以才说有歧义,答案多与没有答案都是不合适的。我觉得还有一种情况,就是有没有可能D-4<0,十位退位的情况,有的话可能ABCD四个数也是密码

我有点没跟上思路

Reply View the author
吴标
deepin
2024-06-26 14:32
#54
子龙不秃头

我有点没跟上思路

比如说8512,3-4=-2,那第三位数就要借位了,最后一位是就是8,倒数第二位0-2也要借位,倒数第二位也是8,当然这个就不对了

Reply View the author
xhnc
deepin
2024-06-27 11:51
#55
It has been deleted!
xhnc
deepin
2024-06-27 12:02
#56

A=5 B=1 C=3 D=7
密码为:3903

A=7 B=3 C=1 D=5
密码为:6081

A=7 B=3 C=4 D=2
密码为:6108

A=2 B=7 C=4 D=3
密码为:1509

A=2 B=5 C=1 D=8
密码为:1284

A=3 B=7 C=4 D=2
密码为:2508

是不是缺少条件啊,咋这么多密码

Reply View the author
ikundeepin
Moderator
2024-06-28 13:33
#57
我们可以通过逻辑推理来解决这个问题。首先,我们知道A、B、C、D的和是16,且每个数字都是1到9之间的整数,并且每个数字只能使用一次。 我们可以从最大的数字开始尝试,因为我们知道A、B、C、D都是正整数,且A最大,我们可以尝试让A尽可能的大。 1. 如果A = 9,那么B + C + D = 7,但是没有三个不同的正整数加起来等于7。 2. 如果A = 8,那么B + C + D = 8,可能的组合有以下几种: - B = 1, C = 2, D = 5 或者其他排列 - B = 1, C = 3, D = 4 - 等等,但是我们需要检查这些组合是否符合密码表达式的要求。 我们使用密码表达式来检查这些组合: \[ \text{密码} = 1000 \times (A - 1) + 100 \times (B - 2) + 10 \times (C - 3) + (D - 4) \] 对于A = 8,我们有: - 如果B = 1, C = 2, D = 5,代入表达式: \[ \text{密码} = 1000 \times (8 - 1) + 100 \times (1 - 2) + 10 \times (2 - 3) + (5 - 4) \] \[ \text{密码} = 7000 + 100 \times (-1) + 10 \times (-1) + 1 \] \[ \text{密码} = 7000 - 100 - 10 + 1 = 6891 \] 这个结果是符合要求的,因为每一位都是1到9之间的整数。 我们需要检查其他可能的组合,但是我们已经找到了一个符合条件的组合,即A = 8, B = 1, C = 2, D = 5,所以密码是6891。 我们可以验证这个密码是否符合所有条件: - A、B、C、D的和是16。 - 密码是一个四位数,且每一位都是1到9之间的整数。 因此,正确的四位数密码是6891。
Reply View the author
ikundeepin
Moderator
2024-06-28 13:33
#58
6891
Reply View the author
3 / 3
To page