猴子偷桃问题
来源:一方有 责任编辑:栏目编辑 发表时间:2013-07-02 06:44 点击:次
10:五只猴子采得一堆桃子,猴子彼此约定隔天早起后再分食。
不过,就在半夜里,一只猴子偷偷起来,把桃子均分成五堆后,
发现还多一个,它吃掉这桃子,并拿走了其中一堆。第二只猴子醒来,
又把桃子均分成五堆后,还是多了一个,它也吃掉这个桃子,并拿走了其中一堆。
第三只,第四只,第五只猴子都依次如此分食桃子。那么桃子数最少应该有几个呢?
- <?php
- /*
- 10:五只猴子采得一堆桃子,猴子彼此约定隔天早起后再分食。
- 不过,就在半夜里,一只猴子偷偷起来,把桃子均分成五堆后,
- 发现还多一个,它吃掉这桃子,并拿走了其中一堆。第二只猴子醒来,
- 又把桃子均分成五堆后,还是多了一个,它也吃掉这个桃子,并拿走了其中一堆。
- 第三只,第四只,第五只猴子都依次如此分食桃子。那么桃子数最少应该有几个呢?
- 设总数为x 第0个猴子偷掉后剩下的总数
- (x-1)4/5=H1 第1个猴子偷掉后剩下的总数
- (H1-1)4/5=H2 第2个猴子偷掉后剩下的总数
- (H2-1)4/5=H3 第3个猴子偷掉后剩下的总数
- (H3-1)4/5=H4 第4个猴子偷掉后剩下的总数
- (H4-1)4/5=H5 第5个猴子偷掉后剩下的总数 最后一个猴子最少把桃子分为 5堆每堆一个,还剩一个
- 剩下y=H5
- *系统环境:windows/linux
- *编译环境:php4/php5
- *输入参数:无
- 输出:out.txt
- */
- /*
- 每次猴子偷吃桃子时,桃子总数为5x+1,那么它拿走了x+1,剩下4x,那 上一个猴子偷吃时的桃子总数比下一个猴子偷吃时多了x+1
- */
- for($i=6;$i < 10000;$i++)
- {
- if($minTaozi=getLeftTaozi(5,$i))
- {
- break;
- }
- }
- //输出结果
- output("min count Taozi:$minTaozi",true);
- error_msg("execute success");
- function getLeftTaozi($n,
相关新闻>>
- 发表评论
-
- 最新评论 更多>>