问题描述:
The Fibonacci sequence is defined by the recurrence relation:
Fn = Fn1 + Fn2, 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 first term in the Fibonacci sequence to contain 1000 digits?
翻译:
Fibonacci数列的定义如下:
Fn = Fn-1 + Fn-2,且F1 = 1, F2 = 1。
于是前12个Fibonacci数就是:
第十二项F12,是第一个达到三位数的Fibonacci数。
第一个达到1000位的Fibonacci数又是多少呢?
解答:
def isok(a): count=0 while a>0: a/=10 count+=1 if count==1000: return True return False a,b,c=1,1,0 count=2 while True: c=a+b count+=1 if isok(c): break a=b b=c print count
projecteuler---->problem=25----1000-digit Fibonacci number,布布扣,bubuko.com
projecteuler---->problem=25----1000-digit Fibonacci number
原文:http://blog.csdn.net/q745401990/article/details/29594073