1歩で1段または2段のいずれかで階段を昇るとき,1歩で2段昇ることは連続しないものとする.15段の階段を昇る昇り方は何通りあるか.(京大理系07)
この問題をpythonを使って解きたいのですが、下記のプログラムでは同じパターンの出力がでてしまい、それの解決方法が分かりません。答えは277通りで最後のprint文で277通りと出力させたいです。
リストを保存して比較しようとしてもそれだけのリストを準備することができません。そもそもこのやり方での実現は不可能なのでしょうか。
コード
import random counter = 0 for i in range(100):#この値を無限に増やす。 a = 0 b = 0 result = [] while a < 15: r = random.randint(1,2) result.append(r) if r == 2 and b == r: break a += r if a == 16: break b = r if a == 15: counter += 1 print(result) print("通り数は" + str(counter) + "通りです。")```python
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。