PAT乙级(Basic Level)练习题 >斐波那契凤尾

题目描述
NowCoder号称自己已经记住了1-100000之间所有的斐波那契数。

为了考验他,我们随便出一个数n,让他说出第n个斐波那契数。当然,斐波那契数会很大。因此,如果第n个斐波那契数不到6位,则说出该数;否则只说出最后6位。

输入描述:
输入有多组数据。

每组数据一行,包含一个整数n (1≤n≤100000)。

输出描述:
对应每一组输入,输出第n个斐波那契数的最后6位。

输入例子:
1
2
3
4
100000

输出例子:
1
2
3
5
537501

代码如下:

import java.util.*;
public class PAT1005 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in = new Scanner(System.in);
        int []result = new int[100001];
        result[0]=1;
        result[1]=1;
        for(int i=2;i<100001;i++){
            result[i] = (result[i-1]+result[i-2])%1000000;
        }
        while(in.hasNext()){
            int n = in.nextInt();
            System.out.printf(n<25?"%d\n":"%06d\n",result[n]);
        }
        in.close();
    }
}

你可能感兴趣的:(Java)