­

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

结果: