HDU 1250 (Fib 数列)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/besonn/article/details/99878043

题意:前四个数都是1,一个数是前四个数的和,求 f(n)

正好今天在学Java的相关语句,找到了Java解这道题的方法。
Java解大数真香啊……

public class Main { // 类名最好用Main
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        while(cin.hasNext()){ //相当于C++的EOF操作
        	int n= cin.nextInt();
        	BigInteger ans[] = new BigInteger [10000];  //大数
        	ans[1] = ans[2] = ans[3] = ans[4] = BigInteger.ONE; //ONE应该是大数的1
        	for(int i=5;i<=n;i++){
        		ans[i]=ans[i-1].add(ans[i-2]).add(ans[i-3]).add(ans[i-4]);
        	}
        	System.out.println(ans[n]);
        }
    }
}

猜你喜欢

转载自blog.csdn.net/besonn/article/details/99878043
fib