パーソナルブログメモリ

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

タワーディフェンスで守れるか問題

2022-05-16 | 2日でPython3

タワーディフェンスで守れるか問題

https://www.codingame.com/training/hard/castle-siege

 

ルール

Tがタワーで数値がモンスター

 

1つのタワーは自分中心に5x5の攻撃範囲をもつ

優先順位はY座標の小さいものから

タワーの近く

X座標の大きいものから

1ターンに1つの敵を攻撃する

 

モンスターは1ターンに1つ上に進む

0になる前に画面外に出たら負け

それまでに全て防げたら勝ち

 

タワーにモンスターが衝突するとその時点で

0になり次のターンで消滅する

 

勝ちか負けかと終了時のターンを答える

 

ほとんどゲームの骨格を作った感じ

エラー表示が多いのは最後ルールの微調整のため

 

アプローチ

少し変わった手法としては盤面をまったく作っていない点

48〜57でタワーとモンスターをリスト化しています

 

攻撃の優先順位が複雑で索敵から攻撃が少し大変でした

 


最新の画像もっと見る

コメントを投稿

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