私はここでこのタスクを見つけました。
i番目(1 <= i <= 35)のフィボナッチ数F(i)が与えられた場合、i + 9番目の数F(i)+ F(i + 1)+ ... + F(i+9までのi番目の合計を計算します。 )およびi + 246番目の最後の桁F(i + 246)
私はPythonといくつかのトリック(Binnetの式とトリッキーな再発)を使用してこれを解決しようとしています:
f=lambda n:((1+5**.5)**n-(1-5**.5)**n)/(2**n*5**.5)
exec"n=input();print int(55*f(n)+88*f(n+1)+f(n+6)%10);"*input()
しかし、私はまだソースコードの制限が111で私のものが115であると考えて絞ることができませんでした、私のソリューションを改善する方法のヒントはありますか?
私はPythonの初心者なので、解決策を成功させるためのあらゆる種類の支援をいただければ幸いです。
ありがとう、