AT_abc260_f [ABC260F] Find 4-cycle

Description

[problemUrl]: https://atcoder.jp/contests/abc260/tasks/abc260_f $ S+T $ 頂点 $ M $ 辺の単純無向グラフ $ G $ があります。頂点には $ 1 $ から $ S+T $ の番号が、辺には $ 1 $ から $ M $ の番号が割り振られています。辺 $ i $ は頂点 $ u_i $ と頂点 $ v_i $ を結んでいます。 また、頂点集合 $ V_1\ =\ \lbrace\ 1,\ 2,\dots,\ S\rbrace $ および $ V_2\ =\ \lbrace\ S+1,\ S+2,\ \dots,\ S+T\ \rbrace $ はともに独立集合です。 長さ $ 4 $ のサイクルを 4-cycle と呼びます。 $ G $ が 4-cycle を含む場合、4-cycle をどれか 1 つ選び、選んだサイクルに含まれる頂点を出力してください。頂点を出力する順番は自由です。 $ G $ が 4-cycle を含まない場合、 `-1` を出力してください。 独立集合とは? グラフ $ G $ の独立集合とは、$ G $ に含まれるいくつかの頂点からなる集合 $ V' $ であって、$ V' $ に含まれる任意の $ 2 $ つの頂点の間に辺がないものを言います。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ S $ $ T $ $ M $ $ u_1 $ $ v_1 $ $ u_2 $ $ v_2 $ $ \vdots $ $ u_M $ $ v_M $

Output Format

$ G $ が 4-cycle を含む場合は、任意の 4-cycle を 1 つ選び、選んだサイクルに含まれている相異なる $ 4 $ 個の頂点の番号を出力せよ。(頂点の順番は問わない。) $ G $ が 4-cycle を含まない場合は `-1` を出力せよ。

Explanation/Hint

### 制約 - $ 2\ \leq\ S\ \leq\ 3\ \times\ 10^5 $ - $ 2\ \leq\ T\ \leq\ 3000 $ - $ 4\ \leq\ M\ \leq\ \min(S\ \times\ T,3\ \times\ 10^5) $ - $ 1\ \leq\ u_i\ \leq\ S $ - $ S\ +\ 1\ \leq\ v_i\ \leq\ S\ +\ T $ - $ i\ \neq\ j $ ならば $ (u_i,\ v_i)\ \neq\ (u_j,\ v_j) $ - 入力される値はすべて整数 ### Sample Explanation 1 頂点 $ 1 $ と $ 4 $ 、$ 4 $ と $ 2 $、$ 2 $ と $ 5 $、$ 5 $ と $ 1 $ の間に辺があるので 頂点 $ 1,2,4,5 $ は 4-cycle をなします。よって $ 1,\ 2,\ 4,\ 5 $ を出力すればよいです。 頂点を出力する順番は自由で、出力例のほかにも例えば `2 5 1 4` のような出力も正答となります。 ### Sample Explanation 2 $ G $ が 4-cycle を含まない入力もあります。