首页 > 编程语言 >python算法:谁是小偷?

python算法:谁是小偷?

时间:2024-05-15 10:45:08浏览次数:25  
标签:一假 三真 python range 算法 num 小偷 com

一,for循环:

1,功能:重复执行同一段代码
语法:

for index in range(n): 
    # 循环体代码

index : 用来依次接收可迭代对象中的元素的变量名
range()函数:负责返回整数序列

流程图:

2,应用

range可以同时指定start 和stop,用for遍历并打印

1 2 3 4 # 指定 start和stop # print的参数 end=" " 用来使打印不换行 for num in range(3,9):     print(num, end=" ")

运行结果:

3 4 5 6 7 8 

说明:刘宏缔的架构森林—专注it技术的博客,
网址:https://imgtouch.com
本文: https://blog.imgtouch.com/index.php/2024/03/16/python-suan-fa-shui-shi-xiao-tou/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: [email protected]

二,谁是小偷的题目与分析

1,题目

警察局抓了ABCD四名小偷嫌疑人,其中有一人是真正的小偷,审讯时,他们的
供词是这样的:

A:我不是小偷
B:C才是小偷
C:D才是小偷
D:C在胡说八道,冤枉好人

已知,三人说了真话,一人说了假话,到底谁是小偷?

2,分析:

我们假定x为小偷,那么x取值可能分别为A、B、C、D
当x取某个值时满足下面四个表达式中的三个真一个假:

x!=A,x=C,x=D,x!=D

x=A时,统计下四个表达式,看是否满足三真一假
x= B时,统计下四个表达式,看是否满足三真一假
x=C时,统计下四个表达式,看是否满足三真一假
x=D时,统计下四个表达式,看是否满足三真一假

三,编写代码

1 2 3 4 5 6 7 8 9 # 使用for循环 # 依次对嫌疑人做判断 list1 = ['A', 'B', 'C', 'D', ] for x in list1:     # 如果四人的证词满足三真一假,     # 那么证词链相互认证,小偷现身     num = (x != 'A') + (x == 'C') + (x == 'D') + (x != 'D')     if num == 3:         print('小偷是', x)

运行结果:

小偷是 C

 

标签:一假,三真,python,range,算法,num,小偷,com
From: https://www.cnblogs.com/architectforest/p/18193361

相关文章

  • python算法:年龄问题
    一,认识递归函数1,什么是递归?递归的工作原理是,如果函数需要处理的问题大小合适,则直接求解并返回结果,否则将问题分解成两个或多个更小的子问题,并对子问题进行相同的处理,直到问题无法分解为止2,什么是递归函数:递归函数(recursivefunction)是指在函数体中可以调用自己的函数3,语......
  • python算法:青蛙跳台阶
    一,认识递归函数1,什么是递归?递归的工作原理是,如果函数需要处理的问题大小合适,则直接求解并返回结果,否则将问题分解成两个或多个更小的子问题,并对子问题进行相同的处理,直到问题无法分解为止2,什么是递归函数:递归函数(recursivefunction)是指在函数体中可以调用自己的函数3,语......
  • python算法:马克思的数学题
    一,for循环:1,功能:重复执行同一段代码语法:forindexinrange(n):   #循环体代码index:用来依次接收可迭代对象中的元素的变量名range()函数:负责返回整数序列流程图:2,应用range可以同时指定start和stop,用for遍历并打印1234#指定start和s......
  • python算法:爱因斯坦阶梯
    一,for循环:1,功能:重复执行同一段代码语法:forindexinrange(n):   #循环体代码index:用来依次接收可迭代对象中的元素的变量名range()函数:负责返回整数序列流程图:2,应用range可以同时指定start和stop,用for遍历并打印1234#指定start和s......
  • python算法:百钱买百鸡
    一,for循环:1,功能:重复执行同一段代码语法:forindexinrange(n):   #循环体代码index:用来依次接收可迭代对象中的元素的变量名range()函数:负责返回整数序列流程图:2,应用range可以同时指定start和stop,用for遍历并打印1234#指定start和s......
  • python算法:鸡兔同笼
    一,for循环:1,功能:重复执行同一段代码语法:forindexinrange(n):   #循环体代码index:用来依次接收可迭代对象中的元素的变量名range()函数:负责返回整数序列流程图:2,应用range可以同时指定start和stop,用for遍历并打印1234#指定start和s......
  • python算法: 棋盘上的麦粒(舍罕王赏麦)
    一,for循环:1,功能:重复执行同一段代码语法:forindexinrange(n):   #循环体代码index:用来依次接收可迭代对象中的元素的变量名range()函数:负责返回整数序列流程图:2,应用range可以同时指定start和stop,用for遍历并打印1234#指定start和s......
  • python算法:杨辉三角
    一,认识递归函数1,什么是递归?递归的工作原理是,如果函数需要处理的问题大小合适,则直接求解并返回结果,否则将问题分解成两个或多个更小的子问题,并对子问题进行相同的处理,直到问题无法分解为止2,什么是递归函数:递归函数(recursivefunction)是指在函数体中可以调用自己的函数3,语......
  • python算法:n皇后
    一,认识递归函数1,什么是递归?递归的工作原理是,如果函数需要处理的问题大小合适,则直接求解并返回结果,否则将问题分解成两个或多个更小的子问题,并对子问题进行相同的处理,直到问题无法分解为止2,什么是递归函数:递归函数(recursivefunction)是指在函数体中可以调用自己的函数3,语......
  • 分类算法中精确率、召回率、F1 Score的理解
    在机器学习和深度学习中,将分类任务的预测结果分为以下四种,被称作混淆矩阵:TruePositive(TP):预测出的为正例,标签值也为正例,预测正确FalseNegative(FN):预测出的为负例,标签值为正例,预测错误FalsePositive(FP):预测出的为正例,标签值为负例,预测错误TrueNegative(TN):预测出的为负......