#P6983. [NEERC 2015] King’s Inspection

[NEERC 2015] King’s Inspection

Description

国王 Karl 是一位负责且勤勉的统治者。每年他都会在全国各地巡游,以确保所有城市都运转良好。

他的国家有 nn 个城市和 mm 条道路。为了控制旅行者,每条道路都是单向的,即从城市 aa 到城市 bb 的道路不能从 bbaa 通过。

Karl 想要沿着这些道路旅行,他希望从首都出发,恰好访问每个非首都城市一次,并最终回到首都。

作为交通部长,你有责任找到这样一条路线,或者确定这样的路线不存在。

Input Format

第一行包含两个整数 nnmm (2n100000,0mn+20)(2 \le n \le 100000, 0 \le m \le n + 20) —— 国家中的城市数量和道路数量。

接下来的 mm 行中的每一行包含两个整数 aia_{i}bib_{i} (1ai,bin)(1 \le a_{i}, b_{i} \le n),表示有一条从城市 aia_{i} 到城市 bib_{i} 的单向道路。城市编号从 11nn。首都编号为 11

Output Format

如果存在一条路线可以恰好经过每个非首都城市一次,并且起点和终点都是首都,则输出 n+1n + 1 个以空格分隔的整数——表示沿途经过的城市列表。请在路线的开头和结尾都输出首都城市。

如果没有符合条件的路线,则输出 There is no route, Karl!(不带引号)。

4 6
1 4
4 1
4 2
2 1
3 4
1 3

1 3 4 2 1

4 3
1 4
1 4
2 2

There is no route, Karl!

Hint

时间限制:10 秒,内存限制:512 MB。

题面翻译由 ChatGPT-4o 提供。