#abc260f. [abc260_f]Find 4-cycle

[abc260_f]Find 4-cycle

题目描述

我们有一个简单无向图 GG,包含 (S+T)(S+T) 个顶点和 MM 条边。顶点编号为 11(S+T)(S+T),边编号为 11MM。第 ii 条边连接了顶点 uiu_iviv_i
这里,顶点集 V1=lbrace1,2,dots,SrbraceV_1 = \\lbrace 1, 2,\\dots, S\\rbraceV2=lbraceS+1,S+2,dots,S+TrbraceV_2 = \\lbrace S+1, S+2, \\dots, S+T \\rbrace 都是独立集。

长度为 44 的环被称为4环。
如果 GG 包含4环,选择其中任意一个并打印环中的顶点。可以以任意顺序打印顶点。
如果 GG 不包含4环,打印 -1

什么是独立集?对于图 GG 的一个顶点集 VV' 而言,如果 VV' 中的任意两个顶点之间没有边相连,那么 VV' 就是图 GG 的一个独立集。

约束条件

  • 2leqSleq3times1052 \\leq S \\leq 3 \\times 10^5
  • 2leqTleq30002 \\leq T \\leq 3000
  • 4leqMleqmin(StimesT,3times105)4 \\leq M \\leq \\min(S \\times T,3 \\times 10^5)
  • 1lequileqS1 \\leq u_i \\leq S
  • S+1leqvileqS+TS + 1 \\leq v_i \\leq S + T
  • 如果 ineqji \\neq j,则 (ui,vi)neq(uj,vj)(u_i, v_i) \\neq (u_j, v_j)
  • 输入中的所有值均为整数。

输入

从标准输入中按以下格式输入:

SS TT MM u1u_1 v1v_1 u2u_2 v2v_2 vdots\\vdots uMu_M vMv_M

输出

如果 GG 包含4环,选择其中一个并打印环中四个不同顶点的索引。(顶点的顺序不重要)
如果 GG 不包含4环,打印 -1


示例输入 1

2 3 5
1 3
1 4
1 5
2 4
2 5

示例输出 1

1 2 4 5

顶点 1144442222555511 之间都有边相连,因此顶点 11224455 构成一个4环。所以,应该打印 11224455
顶点的顺序可以任意。除了示例输出外,例如 2 5 1 4 也被认为是正确的。


示例输入 2

3 2 4
1 4
1 5
2 5
3 5

示例输出 2

-1

某些输入可能导致 GG 不包含4环。


示例输入 3

4 5 9
3 5
1 8
3 7
1 9
4 6
2 7
4 8
1 7
2 9

示例输出 3

1 7 2 9