天下一ジグソーパズルふたたび(天下一プログラマーコンテスト2013予選B [C]) AtCoder 2021.06.122021.05.22 スポンサーリンク 目次 概要解法 概要 問題文 → ■公式解説 → ■自分の提出 → ■ 解法 直前 1 行分の情報を持つタイプの DP により解けます(アリ本 p.179)。 あるところまで埋めた時点での 直前 1 行分について、下に向けて凸にしたかどうかのビット列最後の 1 マスについて、右に向けて凸にしたかどうかこれまで全体で使った四辺が凹のピースの個数これまで全体で使った四辺が凸のピースの個数 を DP のキーとして、「特殊なピース」の最大値を値とします。 状態が、HW⋅2W⋅2⋅(HW/2)2 程度で、遷移は状態あたり O(1) です。全体として、O(H3W3⋅2W) 時間で解くことができます。最大ケースに対して、状態数は合計で 107 程度となります。