pythonでFibonacci数列を作る問題を記録します
831 ワード
年初に会社を辞めて今までプログラミングしたことがなくて、中には何回かpythonを使っていますが、あまり急いでいないので、ずっと引きずっていて、今pythonを勉強する暇があります.
この2,3日基本的な文法に慣れましたが、pythonで問題を解くのは初めてです.文法を熟知して身につける.
タイトルの説明
Fibonacci数列は、F[0]=0 F[1]=1 for each i≧2:F[i]=F[i-1]+F[i-2]と定義されているので、Fibonacci数列は、0,1,1,2,3,5,8,13,...,Fibonacci数列の数をFibonacci数と呼ぶ.あなたに1つのNをあげて、あなたはそれを1つのFibonacci数に変えたいと思って、すべてのステップはあなたは現在の数字のXをX-1あるいはX+1に変えることができて、今あなたに1つの数のNを求めて最低でどれだけのステップを必要としてFibonacci数に変えることができます.
説明を入力:
出力の説明:
例
入力
しゅつりょく
解:
この2,3日基本的な文法に慣れましたが、pythonで問題を解くのは初めてです.文法を熟知して身につける.
タイトルの説明
Fibonacci数列は、F[0]=0 F[1]=1 for each i≧2:F[i]=F[i-1]+F[i-2]と定義されているので、Fibonacci数列は、0,1,1,2,3,5,8,13,...,Fibonacci数列の数をFibonacci数と呼ぶ.あなたに1つのNをあげて、あなたはそれを1つのFibonacci数に変えたいと思って、すべてのステップはあなたは現在の数字のXをX-1あるいはX+1に変えることができて、今あなたに1つの数のNを求めて最低でどれだけのステップを必要としてFibonacci数に変えることができます.
説明を入力:
N(1 ≤ N ≤ 1,000,000)
出力の説明:
Fibonacci "
例
入力
15
しゅつりょく
2
解:
n = int(input())
a = 0
b = 1
while n > b:
a, b = b, a+b
if n - a < b - n:
step = n - a
else:
step = b - n
print(step)