zcmu 1041
1041: 二哥的困惑 Ⅳ
Description
A Fibonacci sequence is calculated by adding the previous two members of the sequence, with the first two members being both 1.
f(1) = 1, f(2) = 1, f(n > 2) = f(n - 1) + f(n - 2)
Your task is to take a number as input, and print that Fibonacci number.
Input
Input contains several cases, every case contains a positive integer number N.
Output
print the Nth Fibonacci number.
Sample Input
100
Sample Output
354224848179261915075
思路:数值太大,直接用Java大数处理。
代码如下:
import java.math.BigInteger;
import java.util.Scanner;
public class Main{
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
int n;
BigInteger a[] = new BigInteger[1005];
while(in.hasNext()) {
n = in.nextInt();
a[1] = BigInteger.valueOf(1);
a[2] = BigInteger.valueOf(1);
for(int i = 3;i <= n;i++) {
a[i] = a[i-1].add(a[i-2]);
}
System.out.println(a[n]);
}
}
}
import java.util.Scanner;
public class Main{
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
int n;
BigInteger a[] = new BigInteger[1005];
while(in.hasNext()) {
n = in.nextInt();
a[1] = BigInteger.valueOf(1);
a[2] = BigInteger.valueOf(1);
for(int i = 3;i <= n;i++) {
a[i] = a[i-1].add(a[i-2]);
}
System.out.println(a[n]);
}
}
}