逻辑推演题——谁是骗子

在小红书看到一道逻辑问题(见下图),突发奇想地想用Python推演答案。

有大神只用了11行就得到了正确答案。代码见下面:

def check_liar(liar):

xiaoming = (liar != "小明")

xiaohong = xiaoming and liar != "小红"

xiaohua = (liar == "小红")

xiaole = (liar == "小华")

truth_count = int(xiaoming) + int(xiaohong) + int(xiaohua) + int(xiaole)

print(truth_count)

return truth_count == 3

for candidate in ["小明", "小红", "小华", "小乐"]:

if check_liar(candidate):

print("骗子是{}".format(candidate))

自己学了几年Python,还不能解决这个初级问题,感觉备受打击。

相关推荐
qq_283720053 小时前
Python GIL 底层实现与高并发突破实战
python·性能优化·高并发·全局锁
橙露3 小时前
Python 对接 API:自动化拉取、清洗、入库一站式教程
开发语言·python·自动化
Omigeq4 小时前
1.4 - 曲线生成轨迹优化算法(以BSpline和ReedsShepp为例) - Python运动规划库教程(Python Motion Planning)
开发语言·人工智能·python·算法·机器人
2301_808414384 小时前
自动化测试的实施
开发语言·python
无限码力4 小时前
华为OD技术面真题 - Python开发 - 4
python·华为od·华为od技术面真题·华为od面试八股文·华为od面试真题·华为odpython开发真题·华为od技术面题目
l1t4 小时前
用wsl自带的python 3.10下载适用于3.12的pandas版本结合uv安装python 3.12模拟离线安装场景
python·pandas·uv
飞Link5 小时前
【AI大模型实战】万字长文肝透大语言模型(LLM):从底层原理解析到企业级Python项目落地
开发语言·人工智能·python·语言模型·自然语言处理
翻斗包菜5 小时前
第 03 章 Python 操作 MySQL 数据库实战全解
数据库·python·mysql
xcjbqd05 小时前
如何修改Oracle服务器默认的日期格式_NLS_DATE_FORMAT全局配置
jvm·数据库·python
white-persist5 小时前
【vulhub spring CVE-2018-1270】CVE-2018-1270 Spring Messaging 远程命令执行漏洞 完整复现详细分析解释
java·服务器·网络·数据库·后端·python·spring