关于一些智力逻辑题的感悟

        题目如图所示,题目中我们知道,永远满足条件三个人说真话,一个人说假话,那么我们就设说真话条件为1,说假话的条件为0

        由此,我们就知道当所有的条件加起来,就满足1+1+1+0,为3

        如图所示,我们可以先定义一个chat类型的变量“killer”,让他先从A开始排查,一直排查到D;最后killer等于哪个字符,哪个字符就是凶手

        由于字符的ACSLL码是顺序排序,killer初始是‘A’,此后每次加一就可以招待下一个字符

        同时,我们将题目中的条件加进去,满足该条件时,返回的值就是1,我们将每个条件加起来。在上文中我们知道,这些条件肯定满足3,那么我们就寻找满足这些条件相加等于3的killer的字符,最后找到的字符就是答案

        第二题中,让我们确认五名选手的名次,我们已知条件是每个选手都说对了一半,那我们可以再次用到第一题中的方法,当这个选手说的条件是真的时候,则为1;为假,则为0.

        那么,每个选手都说对一半,就是每个选手都说对一个条件,加起来则为5

        同时,我们定义出a,b,c,d,e五个变量,让他们都从0开始筛选,当满足我们的条件时,就输出名次

        如图所示,我们将所有可能都找出来,但是最后却发现有很多情况也满足条件,这是因为我们在筛选的时候将重复的条件带了进去,最后的名次肯定只有一个情况

        我们知道,A,B,C,D,E五个人是1,2,3,4,5的名次排列,五个名次的乘积必是120,所以我们可以加上上图的条件,来筛选我们想要的正确答案

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值