QOJ.ac

QOJ

حد الوقت: 3 s حد الذاكرة: 1024 MB مجموع النقاط: 100

#3012. 飞机、火车,但不是汽车

الإحصائيات

做一名旅行推销员是一项艰苦的工作。Per 就是这样一名推销员,他想找到一种高效的方式,访问某个外国的所有城市,且每个城市恰好访问一次。

Per 对“高效”的定义很独特,因为他讨厌坐飞机。更糟糕的是,他绝对拒绝使用汽车。Per 最喜欢的交通方式是火车。他非常乐意尽可能长时间地乘坐火车。

这个国家的铁路系统非常奇特且极其有限。所有的火车线路都是单向的,一旦有人从某个城市乘火车离开,就不存在任何火车线路序列能回到该城市。这是因为该国试图通过昂贵的机票来获利。在这个国家,每个城市都有且仅有一个机场,因此你可以从任何城市乘飞机前往任何其他城市。

Per 不仅想知道他需要的最少飞行次数。他还想知道在飞行次数最少的某次行程中,他可以访问哪些城市的机场。你看,Per 喜欢机场餐厅,他想知道他可以访问哪些餐厅,以便选择他的路线来访问他最喜欢的餐厅。如果他飞入或飞出某个城市,他就可以访问该机场。注意,Per 可以从任何城市出发。

考虑这个有四个城市的国家,箭头表示单向火车路线:

Per 可以采取多种可能的行程,但他至少需要飞行一次。以下是一些(但不是全部)飞行次数最少的可能路线,其中 $\to$ 表示火车行程,$\Rightarrow$ 表示飞行行程:

$$ 1 \to 2 \to 4 \Rightarrow 3\\ 2 \to 4 \Rightarrow 1 \to 3\\ 1 \to 3 \to 4 \Rightarrow 2 $$

在这个例子中,每个机场在至少一条路线上都被访问过。Per 可以选择他的路线,从而访问他想要的任何机场餐厅。

输入格式

每个测试用例以一行包含两个空格分隔的整数 $n$ ($1 \leq n \leq 10^5$) 和 $m$ ($0 \leq m \leq 10^5$) 开始,其中 $n$ 是城市数量,$m$ 是火车线路数量。城市编号为 $1 \cdots n$。

接下来的 $m$ 行,每行包含两个空格分隔的整数 $a$ 和 $b$ ($1 \leq a, b \leq n, a \ne b$),表示有一条从城市 $a$ 到城市 $b$ 的火车线路(但没有反向线路)。所有火车线路都是不同的。

输出格式

输出恰好两行。

第一行输出一个整数,表示 Per 访问所有城市所需的最少飞行次数。

第二行输出一个空格分隔的整数列表,表示他可以访问机场的城市。如果他可以在任意一条飞行次数最少的路线上访问某个机场,就应该将其列出。按升序输出这些数字。如果没有机场可被访问,则输出一个空行。

样例

样例输入 1

4 4
1 2
1 3
2 4
3 4

样例输出 1

1
1 2 3 4

样例输入 2

4 3
1 2
2 3
3 4

样例输出 2

0

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.