进来,看看谁是小偷!
本帖最后由 yayc_zcyd 于 2021-4-7 21:24 编辑有4名嫌疑犯,其中有一人偷了8千万元
(这几位不要建议,我就是举个例子{:10_312:} )
题目:
警察审问4名小偷嫌疑犯。现在一直, 这4个人当中仅有一名是小偷, 还知道这4个人中的每个人要么是诚实的,要么总是说谎。
下面是小偷的回答:
小伤口:“柿子饼没偷, 是yayc_zcyd偷的。"
柿子饼:“我才没偷!是ynqj偷的”
ynqj:“小伤口没偷, 是柿子饼偷的。”
yayc_zcyd:“我没偷”
然后就上代码吧(看看到底是谁偷的{:10_256:}):
if __name__ == "__main__":
a, b, c, d = 1, 0, 0, 0
for i in range(1, 4 + 1):
if b + d == 1 and b + c == 1 and a + b == 1:
break
else:
if i == 1:
a = 0
b = 1
if i == 2:
b = 0
c = 1
if i == 3:
c = 0
d = 1
print("判断结果:")
if i == 1:
print("小伤口是小偷!\n")
if i == 2:
print("柿子饼是小偷!\n")
if i == 3:
print("ynqj是小偷!\n")
if i == 4:
print("yayc_zcyd是小偷!\n")最后,小偷是:柿子饼同学!{:10_256:}
本帖最后由 yayc_zcyd 于 2021-4-7 21:24 编辑
下面请柿子饼进监狱{:10_256:},判无期{:9_227:} 柿子饼同学 发表于 2021-4-8 22:17
能解释一下你的代码么,我不太懂算法这一块的
首先,这是一个逻辑推断问题。就先假设a(小伤口),b(你),c(ynqj),d(我)分别代表咱们四个人,变量的值为1代表他就是小偷!
条件:
小伤口:“柿子饼没偷, 是yayc_zcyd偷的。"
b + d = 1
柿子饼:“我才没偷!是ynqj偷的”
b + c = 1
ynqj:“小伤口没偷, 是柿子饼偷的。”
a + b = 1
yayc_zcyd:“我没偷”
a + b + c + d = 1 注:我的话没法判断真假,所以我就反应了我们4人有一个是小偷的条件
然后就推导出了逻辑表达式:
b + d == 1 and b + c == 1 and a + b == 1
哈哈,我不是小偷。(悄悄告诉你们,我自己都不知道什么时候我成了嫌疑人{:10_256:}) 厉害了 本帖最后由 小伤口 于 2021-4-8 15:15 编辑
本来想以普通人的身份,跟你们相处,但换来的却是怀疑和疏远
不装了,我就是被偷8千万的人,我摊牌了{:10_256:}
@柿子饼同学
还钱~{:10_256:} {:5_102:} 小伤口 发表于 2021-4-8 15:16
@柿子饼同学
还钱~
哈哈哈 你这个帖子竟然不去侦探事务所版块发{:10_308:} yayc_zcyd 发表于 2021-4-7 21:11
下面请柿子饼进监狱,判无期
我里面有人{:10_256:} 小伤口 发表于 2021-4-8 15:16
@柿子饼同学
还钱~
买了4个窝窝头{:10_266:} 能解释一下你的代码么,我不太懂算法这一块的{:10_254:} 赤井务武 发表于 2021-4-8 19:26
你这个帖子竟然不去侦探事务所版块发
额,这个是算法,就是举个例子 {:10_277:} yayc_zcyd 发表于 2021-4-9 16:37
额,这个是算法,就是举个例子
我知道,就开玩笑哈哈{:10_266:} 这代码好厉害 好 柿子饼同学 发表于 2021-4-8 22:17
能解释一下你的代码么,我不太懂算法这一块的
就有点像用方程解决问题,先射,呸!。先设小伤口为小偷,然后在推理 yayc_zcyd 发表于 2021-4-9 19:51
就有点像用方程解决问题,先射,呸!。先设小伤口为小偷,然后在推理
{:10_277:}
页:
[1]
2