CODINGAME SPRING CHALLENGE 2021 参加記

www.codingame.com

成績

全体 179位,日本人 26位でした. Legend到達は初めてなので嬉しいです.

やったこと

僕の決めたルールに従ってトロロ君に動いてもらいました.ビームサーチを一度書きましたが,あまりに弱くて泣く泣く廃棄しました.

ルール

COMPLETEのルール1:dayの最初にCOMPLETEする

  • COMPLETEすることでsize2の木をGROWしやすくなり,size2の木をGROWすることでsize1の木をGROWしやすくなり,size1の木をGROWすることで(以下略).

COMPLETEのルール2:size2,3の木の数を基準にCOMPLETEする

  • 具体的には #size2 + #size3 >= min(7, 23-day)を満たすときにCOMPLETEする.

COMPLETEのルール3:相手が自分以上にCOMPLETEしているときは,多少無理にでもCOMPLETEする

  • 相手のCOMPLETE数が自分のCOMPLETE数以上の場合は,ルール2を満たさなくても,#size3 >= min(4, 23-day) を満たせばCOMPLETEする.

COMPLETEのルール4:得られるSun Pointが少ない木をCOMPLETEする

  • 現在の盤面のまま3日間経過したときに得られるSun Pointが最も少ないsize3の木をCOMPLETEする.

SEEDのルール1:種は1つまで

  • 2個以上の種を同時に盤面に置かない

SEEDのルール2:自分の木の陰にならない場所にSEEDする

  • 6方向について3つ先まで隣接セルを見て,そこに存在する自分の木の数をカウントし,これをAとする

  • 種が届く場所で,なおかつ,-4A+richness が最も大きいセルにSEEDする

GROWのルール1: size1の木は1本,size2の木は3本まで

  • この制限を付けることで,勝手にGROW2->3,GROW1->2,GROW0->1,SEEDの順で動いてくれるようになる

GROWのルール2:終盤はGROWを絞る

  • 21日目以降は,size2かつrichness3の木だけを育成する.

感想

こどげは本当に楽しいですね. 次はお気持ちルールベースではなく,ちゃんとした探索アルゴリズムで勝ちに行きたいです. あと,TERRYさんオススメの本買ったので,積読しないでちゃんと読みたいですね.

f:id:tabae326:20210518200722j:plain