题目描述
一只成熟的兔子每天能产下一胎兔子。每只小兔子的成熟期是一天。 某人领养了一只小兔子,请问第N天以后,他将会得到多少只兔子。
输入描述:
测试数据包括多组,每组一行,为整数n(1≤n≤90)。
输出描述:
对应输出第n天有几只兔子(假设没有兔子死亡现象)。
输入例子:
1
2
输出例子:
1
2
思路:f(n)=f(n-1)+f(n-2)
注意 : 不能使用int 容易超出范围
代码如下:
import java.util.*;
public class PAT1003 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
long []a=new long[91];
a[0]=1;
a[1]=2;
while(in.hasNext()){
int n = in.nextInt();
if(n>2){
for(int i=2;i<n;i++){
a[i]=a[i-1]+a[i-2];
}
}
System.out.println(a[n-1]);
}
in.close();
}
}