Python解答智力题

2023-01-31 01:01:44 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

结果:

wKiom1mBWXWiRrW9AADZmpE0Ll4921.png

相关文章