Advertisement
Guest User

Untitled

a guest
Jan 25th, 2015
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.35 KB | None | 0 0
  1. def fastFib(n):
  2.     if n <= 2:
  3.         return 1
  4.     half = int(n / 2)
  5.     a = fastFib(half)
  6.     b = fastFib(half + 1)
  7.     if n%2 == 0:
  8.         return a*(2*b-a)
  9.     else:
  10.         return a*a+b*b
  11.  
  12. from math import sqrt
  13. def mathFib(n):
  14.     s5 = sqrt(5)
  15.     return ((1+s5)**n-(1-s5)**n)/(2**n*s5)
  16.  
  17. print(fastFib(100000))
  18. print(mathFib(100000))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement