找到n的第n个斐波那契数,大到10 ^ 19

时间:2015-01-12 21:17:21

标签: python fibonacci

我需要制作一个程序来找到第n个Fibonacci数字,这是我的代码:

fib,num2 = 0,1
for i in range(int(input())):
    fib,num2 = num2,fib+num2
print(fib)

我的程序在不到2秒的时间内完成的一些案例大到10 ^ 19。

我该怎么编码?

1 个答案:

答案 0 :(得分:0)

我有类似的问题,我不确定,但你可以尝试记忆

var fib3 = (function(){
    var memo = {};
    return function(n) {
        if (memo[n]) {return memo[n];}
        return memo[n] = (n <= 2) ? 1 : fib3(n-2) + fib3(n-1);
    };
})();