閱讀204 返回首頁    go 阿裏雲 go 技術社區[雲棲]


【JAVA大數訓練】大菲波數

大菲波數
Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 10291    Accepted Submission(s): 3461


Problem Description
Fibonacci數列,定義如下:
f(1)=f(2)=1
f(n)=f(n-1)+f(n-2) n>=3。
計算第n項Fibonacci數值。

 

Input
輸入第一行為一個整數N,接下來N行為整數Pi(1<=Pi<=1000)。

 

Output
輸出為N行,每行為對應的f(Pi)。

 

Sample Input
5
1
2
3
4
5
 

Sample Output
1
1
2
3
5
 

Source
2007省賽集訓隊練習賽(2)

 

import java.math.BigInteger;
import java.util.Scanner;
public class Main {
 public static void main(String[] args) {
  Scanner input=new Scanner(System.in);
  int n=input.nextInt();
  BigInteger [] p=new BigInteger[1000];
  while(n!=0)
  {
   int m=input.nextInt();
            n--;
            p[1]=BigInteger.valueOf(1);p[2]=BigInteger.valueOf(1);
      for (int i = 3; i<=m; i++) {
    p[i]=p[i-1].add(p[i-2]);
   }
      System.out.println(p[m]);
  }
 }
}



總結:
取平常值(如取1):
BigInteger.valueOf(1);

最後更新:2017-04-03 12:56:11

  上一篇:go Android中獲取正在運行的服務-------ActivityManager.RunningServiceInfo的使用
  下一篇:go Java的IO操作中關閉流的注意點