Python解答智力题
- 2020 年 1 月 14 日
- 筆記
在网上翻阅到一个智力题:
求解:一筐鸡蛋: 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
结果:
