猴子吃桃
某天一只猴子摘了一堆桃子,每天吃掉其中的一半,然后在多吃一个,
第二天则吃剩的一半然后再多吃一个,…….直到第10天,猴子发现了
只有1个桃子。问这只猴子在第一天摘了多少个桃子?
这道题目还是挺简单的,关键在与:知道第一天比第二天多一个,在两倍
由此可以的到: (f(n-1)+1)*2
下面看java代码是实现:
public class P10_3 {
public static void main(String[] args) {
//要求出第一天的桃子,就要求出第二天的桃子.......
f(10);
System.out.println(f(10));
}
public static int f (int n)
{
if(n==1) return 1; //第十天,只剩下一个桃子
return (f(n-1)+1)*2; //第一天总比第二天多一个,在多两倍
}
}