AT_abc472_e [ABC472E] Odd Cycle

题目描述

给你一个简单连通的无向图,图中有编号为 $1$ 到 $N$ 的 $N$ 个顶点和 $M$ 条边。第 $i$ 条边连接顶点 $a_i$ 和 $b_i$。 请判断是否存在由奇数个顶点组成的环,如果存在,请找出一个这样的环。 形式上,判断是否存在满足以下所有条件的整数序列 $(v_1,v_2, \dots ,v_K)$,如果存在,请找出一个这样的序列。 - $K$ 是至少为 $3$ 的奇数。 - $(v_1,v_2, \dots ,v_K)$ 都是不同的。 - 对于满足 $1\le i \le K$ 的每一个整数 $i$,顶点 $v_i$ 和 $v_{i+1}$ 之间都有一条边,其中 $v_{K+1} = v_1$。 给你 $T$ 个测试用例,请逐一求解。

输入格式

输入内容由标准输入提供,格式如下: > $T$ $\mathrm{case}_1$ $\mathrm{case}_2$ $\vdots$ $\mathrm{case}_T$ 每个测试用例的格式如下: > $N$ $M$ $a_1$ $b_1$ $a_2$ $b_2$ $\vdots$ $a_M$ $b_M$

输出格式

#### 输出 对于每个测试用例,如果没有满足条件的序列,则输出 `-1`。如果存在,则按以下格式输出一个这样的序列: > $K$ $v_1$ $v_2$ $\ldots$ $v_K$ 如果有多个序列满足条件,则输出任意一个序列即可。

说明/提示

## 样例解释 1 在第一个测试案例中,序列 $(2,1,3)$ 满足条件:边 $(2,1),(1,3),(3,2)$ 全部存在。同时也接受了 $v=(2,3,1)$ 这样的输出。 在第二个测试案例中,不存在顶点数为奇数的环,因此没有序列满足条件。 ## 数据范围限制 - $1 \le T \le 2\times10^5$。 - $1 \le N, M \le 2\times10^5$。 - 所有测试用例中 $N$ 的总和最多为 $2\times10^5$。 - 所有测试用例中 $M$ 的总和最多为 $2\times10^5$。 - $1 \le a_i,b_i \le N$。 - $a_i\ne b_i$。 - 给定的图是一个简单连通的无向图。 - 所有输入值均为整数。