La séquence de Fibonacci est définie par l'équation graduelle suivante:
Fn = Fn-1 + Fn-2, où F1 = 1, F2 = 1. Les 12 premiers termes sont:
F1 = 1 F2 = 1 F3 = 2 F4 = 3 F5 = 5 F6 = 8 F7 = 13 F8 = 21 F9 = 34 F10 = 55 F11 = 89 F12 = 144 Le douzième terme, le premier terme dans lequel F12 a trois chiffres.
Répondez au numéro du premier terme qui sera de 1000 chiffres. http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2025
Je l'ai écrit dans le code tel quel.
import math
def main():
(n1, n2) = (1,1)
N = 10
MAX_N = 1000-1
n = 2
while math.log(n2, N)<MAX_N:
(n1,n2) = (n2, n1+n2)
n += 1
print n
main()
Recommended Posts