import sys,time def fib(n): global fiblist if len(fiblist) > n: return fiblist[n] nfib = fib(n-1) + fib(n-2) fiblist.append(nfib) return nfib n = int(sys.argv[1]) sys.setrecursionlimit(n+1) start = time.time() fiblist = [1,1] nfib = fib(n) end = time.time() print nfib print str((end-start)*1000)+"ms"