# 1000-digit Fibonacci number
# Problem 25

# The Fibonacci sequence is defined by the recurrence relation:
#
# Fn = Fn−1 + Fn−2, where F1 = 1 and F2 = 1.
# Hence the first 12 terms will be:
#
# F1 = 1
# F2 = 1
# F3 = 2
# F4 = 3
# F5 = 5
# F6 = 8
# F7 = 13
# F8 = 21
# F9 = 34
# F10 = 55
# F11 = 89
# F12 = 144
# The 12th term, F12, is the first term to contain three digits.
#
# What is the index of the first term in the Fibonacci sequence to contain 1000 digits?

import time

t = time.time()

fibo_sequence = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144]

while len(str(fibo_sequence[-1])) < 1000:
    fibo_sequence.append(fibo_sequence[-1] + fibo_sequence[-2])

print(len(fibo_sequence))
print(time.time()-t)
# 4 782
