Java中猴子吃香蕉问题
有这样一道题目:
5只猴子是好朋友,在海边的椰子树上睡着了。这期间,有商船把一大堆香蕉忘记在沙滩上离去。
第1只猴子醒来,把香蕉均分成5堆,还剩下1个,就吃掉并把自己的一份藏起来继续睡觉。
第2只猴子醒来,重新把香蕉均分成5堆,还剩下2个,就吃掉并把自己的一份藏起来继续睡觉。
第3只猴子醒来,重新把香蕉均分成5堆,还剩下3个,就吃掉并把自己的一份藏起来继续睡觉。
第4只猴子醒来,重新把香蕉均分成5堆,还剩下4个,就吃掉并把自己的一份藏起来继续睡觉。
第5只猴子醒来,重新把香蕉均分成5堆,哈哈,正好不剩!
请计算一开始最少有多少个香蕉。
需要返回的是一个整数,不要填写任何多余的内容。
实例代码如下:
public class Monkeys {public static void main(String[] args) {for(int banana = 6; ; banana+=5){// temp记录每只猴子分完,剩余香蕉个数int temp = banana;// 第一只猴子if(temp%5==1){temp = (temp-1)/5*4;}else{ // 不满足条件temp%5==1,说明香蕉个数不对,本次循环结束,开始下一次循环continue;}// 第二只猴子if(temp%5==2){temp = (temp-2)/5*4;}else{continue;}// 第三只猴子if(temp%5==3){temp = (temp-3)/5*4;}else{continue;}// 第四只猴子if(temp%5==4){temp = (temp-4)/5*4;}else{continue;}// 第五只猴子if(temp>0 && temp%5==0){ // 注意:最后一只猴子醒来,还有香蕉,所以temp>0System.out.println(banana);break;}}}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
