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

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

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

二重オイラー閉路

問題に戻る

解説

次数 111 の頂点では、入ってきた辺を直ちに戻る必要があるため解は存在しない。逆に、すべての頂点の次数が 222 以上なら解は存在する。橋があってもよい。

各辺を二重化し、Hierholzer 法でオイラー閉路を作る。同じ元の辺を連続して通る箇所を U ターンと呼ぶ。最後と最初の辺のつなぎ目も調べる。

U ターン u→v→uu\to v\to uu→v→u を選ぶ。vvv の次数は 222 以上なので、別の訪問 x→v→yx\to v\to yx→v→y がある。辺 uvuvuv の使用 222 回は選んだ U ターンに含まれるため、x≠ux\neq ux=u、y≠uy\neq uy=u である。x=yx=yx=y でもよい。

二つの訪問間の区間 v→u→⋯→x→vv\to u\to\cdots\to x\to vv→u→⋯→x→v を反転する。境界は u→v→xu\to v\to xu→v→x と u→ となり、どちらも U ターンではない。内部の U ターンの有無は変わらず、閉じた歩道であることと各辺の使用回数も保たれる。したがって U ターン数は少なくとも 減る。

初期の U ターン数は MMM 以下である。各反転を探索込みで O(M)O(M)O(M) 時間で行えば、時間計算量は O(N+M2)O(N+M^2)O(N+M2)、空間計算量は O(N+M) となる。全ケースの時間は 以下である。

小課題 1 では辺の使用回数を三進数で管理し、現在の頂点、直前の辺、使用回数の状態についてメモ化探索する。最初の入力辺を一方向に通るところから始めてよい。解を回転し、必要なら反転すればこの形になる。時間は O(NM23M)O(NM^2 3^M)O(NM23M)、空間は O(NM3M)O(NM3^M)O(NM3 であり、、 なら十分である。

小課題 2 のグラフはパスまたはサイクルである。パスには解がなく、サイクルは同じ向きに 222 周すればよい。時間と空間は O(N+M)O(N+M)O(N+M) である。小課題 3 では上記の反転法を用いる。

Solution written by GPT

v→yu\to v\to y
u→v→y
111
O(N+M)
O(N+M)
O(∑N+(∑M)2)O(\sum N+(\sum M)^2)O(∑N+(∑M)2)
M
)
M≤6M\leq6M≤6
∑M≤200\sum M\leq200∑M≤200