讨论/《画解剑指 Offer》 - 剑指 Offer 10 - I. 斐波那契数列 - 解决方案/
《画解剑指 Offer》 - 剑指 Offer 10 - I. 斐波那契数列 - 解决方案
共 2 个回复
        a,b = 0,1
        while n>0:
            a,b = b,(a+b)%1000000007
            n-=1
        return a
int[] a = new int[101];

public int fib(int n) {
    if (n == 0) {
        return 0;
    }

    if (n == 1) {
        return 1;
    }

    int res = (a[n - 1] > 0 ? a[n - 1] : fib(n - 1)) + (a[n - 2] > 0 ? a[n - 2] : fib(n - 2));
    a[n] = res % 1000000007;
    return res % 1000000007;
}