韩信点兵python源代码_酷叮猫少⼉编程讲堂——Python韩信
点兵
原标题:酷叮猫少⼉编程讲堂——Python 韩信点兵
用数字组词语相传,韩信才智过⼈,从不直接清点军队的⼈数,只要让⼠兵三⼈⼀排,五⼈⼀排,七⼈⼀排地变换队形,⽽每次他只扫⼀眼排位就知道总⼈数了.输⼊包含多组数据,每组数据包含3个⾮负整数a,b,c.表⽰每种队形的排位⼈数(a<3,b<5,c<7) 输出总⼈数的最⼩值(或者报告⽆解)
[已知] 10 <= 总⼈数 <= 100
[样例输⼊] 2 1 6 2 1 3
[样例输出] 2 1 6: 最少 41⼈ 2 1 3: No answer
[分析] 我们应该判断出 a,b,c 的取值范围,即输⼊值的范围 a --> [0,1,2] b --> [0,1,2,3,4] c --> [0,1,2,3,4,5,6] 在寻符合条件的abc组合时,貌似⼀眼看不出来有什么数学公式可以马上解决,但是我们可以⽤计算机暴⼒寻,这叫穷举法.
muddlem中文啥意思[运⾏结果]update后面加什么
[代码] 使⽤for循环,分⽀,input(), print()格式化, 列表推导, 拆包赋值法, 和⼏个内建函数.
# 此程序没有做输⼊错误检查,请⾃⾏添加
def app():开源crm系统
abc = input("请连续输⼊3个整数,以空格分隔:")
abclist = [int(a) for a in abc.split()]
a,b,c=abclist
people = []
for i in range(10,101):
if i%3==a and i%5==b and i%7==c:
people.append(i)
if len(people)>0:
print("Case {}: 最少 {} ⼈".format(abc, min(people)) )
else:
print("Case {}: No answer".format(abc))
# 运⾏三次
strsep函数for i in range(3):
app()
如果想查看a,b,c所有的组合情况,那么这个程序应该怎么升级呢?⼤家如果感兴趣请⾃⾏修改. [提⽰] 最简单的办法是对a,b,c的所有取值使⽤三重循环。返回搜狐,查看更多
少儿python入门教程
责任编辑:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。