2時間1画面ほどで、再度新規で作成してみようと開始
30分後
一画面では無理とあきらめて半日ぐらいかかって完成したもの
クラス設計
3-17 クラス
4-11 初期化メソッド
12-17 メソッド
5 グローバル
8 内包表記
9,10,11 if文
17 積集合
作成関数
全部関数
21 ループ
22 内包表記 リスト
27 フォーマット
29 可変長引数
31 タプル
32 while文
33 pop
35 continue ループの次まで飛ばす
43 brake ループを抜ける
メインルーチン
61 辞書、辞書、辞書、リスト
70 スライス
79 ソートしてスライスを利用してリストを反転
実行結果
最初997位だったのですが22行をちょこっと変えただけで897位まであがりました。
39行目からの関数はまだわりとグダグダで塗りつぶしミスがたまに発生しています。
プログラムよりも実はデータ設計の方は大切だったりします。
データ設計
point 地形データをクラスの辞書化 x,y座標を一次元化したpとして辞書のキーとする
bd 位置ごとのデータを簡易文字列化
mp,op 戦車の位置をリスト化(味方、相手)
spp 戦車の生産可能な場所をスコア付でリスト化
at リサイクラー(絵で見ると地雷っぽいもの)を使って相手戦車を止める場所をリスト化
mlbd,olbd 初回自軍の中心、相手の中心からの最短到達距離を位置ごとにリスト化
独自ルールが多くあるので、たぶんサッパリではないかと思いますが、
各行をみてたいしたことないなと思っていただければと公開。