DOJ logoDOJ
問題
最近追加された問題保存した問題Workbooks
カテゴリDLCコンテストグループチーム掲示板
ランキング
正解数ランキングストリークランキングDOJ Powerランキング
提出状況
問題募集ログイン新規登録
DOJ logoDOJ

OI形式のサブタスク採点、Eloレーティング、Discord連携を備えたオンラインジャッジです。

問題
問題一覧カテゴリ
コミュニティ
コンテストランキング掲示板お知らせ外部のコンテストを開催するガイド
アカウント
ログイン新規登録ジャッジ状態
ポリシー
利用規約DLCの利用規則プライバシーAPI 文書言語ランタイムコンテストの順位報酬レーティングとパフォーマンス
© 2026 DOJ
All rights reserved
解説

L タイリング

問題に戻る

解説

現在の正方形の境界の一行と一列の和集合は、辺長より一つ短い L タイルになる。目標が上端にいなければ上端、いれば下端を選ぶ。列も同様に選ぶ。辺長が二以上なら、選んだ行と列は両方とも目標を避ける。この L を埋めると、目標を含む辺長が一つ小さい正方形が残る。繰り返せば N−1N-1N−1 から 1 の各長さを一度ずつ使い、最後に目標だけが残る。したがって常に可能である。 時間と空間は O(N2)O(N^2)O(N2)。サブタスク 1 では、長いタイルから中心と四方向を全探索するバックトラックを使える。緩い上限は O((4N2)N−1N2)O((4N^2)^{N-1}N^2)O((4N2)N−1N2) で、N≤4N\leq4N≤4 なら十分である。出力値は最大 999、盤面は最大 10610^6106 マスで、64ビット整数に収まる。

Solution written by GPT6.1