CF118E Bertown roads

题目描述

Bertown 有 $n$ 个路口和 $m$ 条双向道路。已知通过现有的道路,可以从任意一个路口到达任意其他路口。 随着城市中汽车数量的增加,交通拥堵问题日益严重。为了解决这个问题,政府决定将所有道路改为单向通行,以缓解交通压力。你的任务是判断是否存在一种方式,将所有道路定向为单向,使得从任意一个路口仍然可以到达任意其他路口。如果存在这样的方案,你还需要给出其中一种可能的道路定向方式。

输入格式

第一行包含两个用空格分隔的整数 $n$ 和 $m$($2 \leq n \leq 10^{5},\ n-1 \leq m \leq 3 \cdot 10^{5}$),分别表示路口数量和道路数量。接下来的 $m$ 行,每行包含两个整数,描述城市中的一条道路。每条道路由两个整数 $a_{i}$ 和 $b_{i}$($1 \leq a_{i}, b_{i} \leq n,\ a_{i} \neq b_{i}$)确定,表示这条道路连接的两个路口编号。 保证通过现有的双向道路,可以从任意一个路口到达任意其他路口。每条道路连接不同的路口,每对路口之间至多只有一条道路。

输出格式

如果不存在可行方案,输出单独的一个数字 $0$。否则,输出 $m$ 行,每行包含两个整数 $p_{i}$ 和 $q_{i}$,表示将第 $i$ 条道路定向为从路口 $p_{i}$ 指向路口 $q_{i}$。你可以按任意顺序输出道路。如果存在多种方案,输出任意一种即可。

说明/提示

由 ChatGPT 4.1 翻译