編程題目:
65.猴子分桃問題:海灘上有一堆桃子,五隻猴子來分。第一隻 猴子把這堆桃子平均分爲五份,多了一個,這隻猴子把多的一個扔入海中,拿走了一份。第二隻猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,第三、第四、第五隻猴子都是這樣做的,問海灘上原來最少有多少個桃子?
示例代碼:
package program.calculation.exercise65;
/**
* 65.猴子分桃問題:海灘上有一堆桃子,五隻猴子來分。
* 第一隻 猴子把這堆桃子平均分爲五份,多了一個,這隻猴子把多的一個扔入海中,拿走了一份。
* 第二隻猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,
* 第三、第四、第五隻猴子都是這樣做的,問海灘上原來最少有多少個桃子?
*/
public class MonkeyDivPeach {
public static void main(String[] args) {
int n = 0; //猴子分桃次數
int peaches = recurPeaches(n);
System.out.println("海灘上原來有"+peaches+"個桃子");
}
//遞歸
private static int recurPeaches(int n) {
if(5 == n) {
return 1;
}else {
return recurPeaches(n+1)*5+1;
}
}
}