#CSPSK090. [USACO10NOV] Chocolate Milk S

提交3 通过1
通过率33.3%
时间限制5000ms
内存限制512MiB

题目描述

题目描述

农民约翰的牛奶生产和运输系统十分复杂。他使用挤奶器给许多奶牛挤奶,挤出的牛奶随后流入管道。

每条管道把一台挤奶器连接到一个接口,在接口处可能恰好还有另一条管道汇入,使两条管道中的牛奶合流。牛奶继续流经连接各个接口的管道,直到到达通往储存室的中央管道。之后,牛奶又经过相反的过程,在不同接口处分流,最终流入将被运往市场的奶罐。

约翰发现,从任意一个接口到另一个接口,牛奶最多只有一种流动路径。并且为了提高效率,他确保每一条管道中都会有牛奶流过,也就是说没有多余的管道。

如果把每台挤奶器、每个接口和每个奶罐都看作一个节点,那么共有 NN 个节点和 N1N-1 条管道。每条管道用一个有序节点对 (Ai,Bi)(A_i,B_i) 表示,牛奶从节点 AiA_i 流向节点 BiB_i。如果一个节点没有管道流入,那么它是一台挤奶器;如果一个节点没有管道流出,那么它是一个奶罐。

最近几个月,市场对巧克力牛奶的需求大幅增加。约翰想在某个接口处安装一台巧克力混合器,从而生产巧克力牛奶。为了节约成本,他只购买了一台混合器,因此希望把它安装在所有牛奶都会经过的接口上。他知道至少存在一个这样的接口。

请找出所有可以安装巧克力混合器的节点。注意:混合器不能安装在挤奶器所在的节点。

例如,考虑下面的牛奶管道系统:

           1 ----+
                 |
                 v
           2 --> 4 --> 6 ------------------> 7 --> 8
                       ^                     |
                       |                     |
           3 --> 5 ----+                     + --> 9

所有牛奶都会经过节点 66 或节点 77,因此巧克力混合器可以安装在这两个节点中的任意一个。

输入格式

第一行包含一个整数 NN

接下来 N1N-1 行,每行包含两个用空格分隔的整数 AiA_iBiB_i,表示一条牛奶从节点 AiA_i 流向节点 BiB_i 的管道。

输出格式

按照编号从小到大的顺序,每行输出一个可以安装巧克力混合器的节点。

数据范围与约定

  • 2N1052 \le N \le 10^5
  • 1Ai<BiN1 \le A_i < B_i \le N
  • 输入恰好包含 N1N-1 条管道
  • 从任意一个接口到另一个接口,牛奶最多只有一种流动路径
  • 每条管道中都会有牛奶流过
  • 至少存在一个可以安装巧克力混合器的接口

可见测试数据

输入数据 1

9
1 4
3 5
2 4
5 6
6 7
7 8
4 6
7 9

输出数据 1

6
7

输入数据 2

10
1 4
2 4
3 4
4 5
5 6
5 7
5 8
5 9
5 10

输出数据 2

4
5

输入数据 3

16
1 6
2 6
3 6
4 6
5 6
6 7
7 8
7 9
7 10
7 11
7 12
7 13
7 14
7 15
7 16

输出数据 3

6
7