Python解答智力题
今天在网上翻阅到一个 智力题:
求解:一筐鸡蛋:
1个1个拿,正好拿完
2个2个拿,还剩1个
3个3个拿,正好拿完
4个4个拿,还剩1个
5个5个拿,还差1个
6个6个拿,还剩3个
7个7个拿,正好拿完
8个8个拿,还剩1个
9个9个拿,正好拿完
问筐里最少有多少鸡蛋
。。。。
于是就用python试了试,然后就算出来了:
# -*- coding:utf-8 -*-
condition="""
求解:一筐鸡蛋:
1个1个拿,正好拿完
2个2个拿,还剩1个
3个3个拿,正好拿完
4个4个拿,还剩1个
5个5个拿,还差1个
6个6个拿,还剩3个
7个7个拿,正好拿完
8个8个拿,还剩1个
9个9个拿,正好拿完
问筐里最少有多少鸡蛋
假设 y = 鸡蛋总数
y / 2 余1
y / 3 = 0
y / 4 余1
y / 5 余4
y / 6 余3
y / 7 = 0
y / 8 余1
y / 9 = 0
解法:
利用Python穷举(while循环),满足以下条件即为鸡蛋总数:
y % 2== y % 4 == y % 8 and y % 3== 0 and y % 7 == 0 and y % 9 == 0 and y % 5 == 4 and y % 6 == 3
"""
print condition
y = 1
while(True):
if y % 2== y % 4 == y % 8 and y % 3== 0 and y % 7 == 0 and y % 9 == 0 and y % 5 == 4 and y % 6 == 3:
print "篮子里总共有鸡蛋: %s(个)"%y
break
y += 1
结果:
相关文章