A - Oni wa Soto, Fuku wa Uchi Editorial
by
poka
本番の解法+本番後の解法メモ
本番の解法+本番後の解法メモ
各解法の簡易説明とScore、提出、本番での順位相当を記載した。本番での順位相当は見間違えていたらすみません。
本番での解法
1投目
Score: 120000 何もしない 本番947位相当
2投目
Score: 341006
提出
本番788位相当
ある操作を福を出さない範囲で連続して行い、最も福を追い出すことのできる連続操作を行う貪欲。
これを鬼がいなくなるまで繰り返す。
鬼が四方を福に阻まれている場合は諦める。
3投目
Score: 451706
提出
本番433位相当
鬼が四方を福に阻まれている場合の処理の追加。
鬼のいる行、列に対して福を追い出さないLRUDいずれかの操作を1回行い貪欲を続行。
もし鬼のいる行、列の全ての両端に福がいたら諦める。
4投目
Score: 456411
提出
本番389位
貪欲の評価をtrunあたりに減らせる鬼の数に変更。
本番後の解法
(ビームサーチの前に)
Score: 458356
提出
本番356位相当
本番での貪欲では、取り出せる最大個数の場合のみを考慮していたが、全ての候補を考える。
例えば最大\(n\)個取り出せる場合は、\(1, 2, \ldots, n\)個取り出す場合の全てを考慮する。
ビームサーチ
Score: 465788
提出
本番80位相当
遷移の候補としては上記のものプラスして鬼のことを考えず1回操作するものを加える。
評価値は盤面の鬼の数。
ビームサーチはrhoo19937さんのbeam-search-libraryにあるnormal_beam_multiを使って実装した。重複除去は行っていない。
ビーム幅5000。時間の余裕はあったがメモリが足りなかった。
ビームサーチ+hash
Score: 466757
提出
本番36位相当
zobrist hashを用いて重複を除去した。
ビーム幅10000
[追記] 重複除去した後に残った(採用された)盤面が seed0で最大3500程度であったため、幅3500相当であったのかもしれない。
posted:
last update: