题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了 一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分 成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只 猴子都是这样做的,问海滩上原来最少有多少个桃子?
解决方法一:
强行for循环:
分析:
设总共的桃子有x个 第一只猴子分:x /5多了一个,还剩(x-1)*4/5=x2 第二只猴子分:x2/5多了一个,还剩(x2-1)*4/5=x3 第三只猴子分:x3/5多了一个,还剩(x3-1)*4/5=x4 第四只猴子分:x4/5多了一个,还剩(x4-1)*4/5=x5 第五只猴子分:x5/5多了一个,还剩(x5-1)*4/5=x6 即:第五只分,还剩:n=(((((((((x-1)*4/5)-1)*4/5)-1)*4/5)-1)*4/5)-1)*4/5>=1 且,第剩下四只猴子可以均分:n%4 == 0
for x in range(1,10000):
for n in range(1,1000):
n = (((((((((int(x) - 1) * 4 / 5) - 1) * 4 / 5) - 1) * 4 / 5) - 1) * 4 / 5) - 1) * 4 / 5
if n%4 == 0:
print(x)
else:
break
解决方法二