#T2096. 环游 II(Round Trip II)

环游 II(Round Trip II)

链接: https://cses.fi/problemset/task/1678

板块: Graph Algorithms

时限: 1.00 s | 内存: 512 MB

题目描述

Byteland 有 nn 座城市和它们之间的 mm 个航班连接。你的任务是设计一次环游:从某座城市出发,经过一个或多个其他城市,最终回到起始城市。路线上的每个中间城市必须互不相同。

输入

第一行输入包含两个整数 nnmm:城市数量和航班数。城市编号为 1,2,,n1,2,\dots,n

接着有 mm 行描述航班。每行包含两个整数 aabb:存在一条从城市 aa 到城市 bb 的航班连接。所有连接都是城市间的单向航班。

输出

先输出一个整数 kk:路线上的城市数量。然后按访问顺序输出 kk 座城市。你可以输出任意合法解。

如果没有解,输出 "IMPOSSIBLE"。

数据范围

1n1051 \le n \le 10^5 1m21051 \le m \le 2 \cdot 10^5 1a,bn1 \le a,b \le n

样例输入

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

样例输出

4
2 1 3 2