1. 程式人生 > >Python解答智力題

Python解答智力題

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

結果:

技術分享

本文出自 “獨孤無愁” 博客,請務必保留此出處http://jlnetc.blog.51cto.com/10920149/1952960

Python解答智力題