python 統計桃子的個數(猴子分桃子)

  周未在XXQQ羣中,看到一個Python面試題,看到其中又是猴子,又是桃子,甚是喜歡;我也來寫一個Python統計桃子。python


#!/usr/bin/env python
# -*- coding:utf-8 -*-

'''
題目:設有一堆桃子是7個猴子的公共財產,它們要平均分配。第一個猴子來後,左等右等都沒有等到別的猴子如約前來,
便只好動手把桃子均分紅7份,發現還多出1個。它以爲本身辛苦了,就將多出的1個桃子吃掉了,並帶上7份中本身的那1
份走了。第二個猴子來了,它不知道以前發生的狀況,覺得桃子尚未被分過,因而又將桃子分紅7份,仍是多出1個,它
吃掉多出的1個桃子,並帶上本身的1份走了,依此類推,每一個猴子都是獨自將剩下的整堆桃子分紅7份,都是多出1個,都
是將多出的1個桃子吃掉,並帶走本身的那一份。

請編寫函數,求桃子的總個數。
'''


def tz():
    #初始桃子的個數: 7*7
    sum1 = 7*7
    flag = 1

    while( flag == 1):
        count = 0
        index = 0
        sum2 = sum1
        while(count < 7):
            if ( sum2 % 7 == 1 ):
                sum2 -= 1
                sum2 -= sum2/7
                index += 1
            if index == 7:
                print "最小桃子的總數:%d" %(sum1)
                flag = 0
                break
            count += 1
        sum1 += 1

if __name__ == "__main__":
    tz()
相關文章
相關標籤/搜索