First 25 done. I still feel dirty for using Python
This commit is contained in:
43
25/main.py
Normal file
43
25/main.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# Get the index of the first Fibonacci number that contains 1000 digits
|
||||
|
||||
|
||||
def dumbfib(n):
|
||||
if n < 3:
|
||||
return 1
|
||||
else:
|
||||
return dumbfib(n - 2) + dumbfib(n - 1)
|
||||
|
||||
def fib(n):
|
||||
if n < 3:
|
||||
return 1
|
||||
else:
|
||||
i = 2
|
||||
res = [1, 1]
|
||||
while i < n:
|
||||
i += 1
|
||||
res.append(res[-1] + res[-2])
|
||||
return res[-1]
|
||||
|
||||
def getLargeFib(x):
|
||||
if x < 2:
|
||||
return 1
|
||||
|
||||
fibs = [1, 1]
|
||||
|
||||
while fibs[-1] < x:
|
||||
fibs.append(fibs[-1] + fibs[-2])
|
||||
|
||||
return len(fibs)
|
||||
|
||||
def main():
|
||||
print("Hello, this is Patrick")
|
||||
|
||||
# print(dumbfib(10))
|
||||
# print(fib(10000))
|
||||
|
||||
r = getLargeFib(pow(10, 999))
|
||||
print(r)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user