パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

カックロの問題を解くアルゴリズム2

2021-01-10 | プログラムをマスター計画2020

カックロの問題を解くアルゴリズム1で瓦解したプログラムを修繕

 

わからない時はドンドン、ログをはくべし。

どんなデータが来てどんなデータを返しているのかあらゆる場所に入れていく。

ほんとにとんでもない、バグがあちこちにありました。

 

手さえ動かしていれば、なんとかなります。

 

ランダムで着手しているため、まだ時々タイムアウトをおこしている難題が1,2問存在

144と147に同じことをしているミスとか少しずつ修正

 

同じ所の数時間後、メインのロジックが一画面に入るようになりました。

70回ほどエラーケースが発生していても0.7秒

もう少し方向性をもたせた仮うち、できそうな気もしますが、力技だけで解けました。

アルゴリズムの概略

1) 数字が確定できる場所まで作る

2) 確定できる箇所がなくなれば、2,3択の箇所のどこか1点だけランダムで置く

3) そのまま確定できる箇所を進めてまた確定できる箇所がなくなれば同じくランダムで置く

4) 計算が合わない時はその時のランダムで置いた画面を2度と置かないように保持、

 そして、最初に作成した数字が確定できたところからやりなおし

 


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。