蓝桥杯 Fibonacci 数列 java

来源:互联网 发布:青山水利造价软件 编辑:程序博客网 时间:2024/06/05 07:26

问题描述

思路:

  • 用一个数组来存储 Fn,空间足够大;
  • 用一个for循环实现递推,每循环一次都取模。

代码:

import java.util.Scanner;//Fibonacci 数列public class BEGIN_4 {    public static void main(String[] args) {        int mod = 10007;        int MAXN = 10000 * 100;        int[] ans = new int[MAXN];        ans[1] = ans[2] = 1;        Scanner sc = new Scanner(System.in);        Integer n = sc.nextInt();        for (int i = 3; i <= n; i++) {            ans[i] = (ans[i - 1] + ans[i - 2]) % mod;        }        System.out.println(ans[n]);    }}

有疑问或者更好的方法欢迎在下方评论

0 0