#ATarc170f. [ARC170F] Edge Deletion 2
[ARC170F] Edge Deletion 2
题目描述
给定一棵有 个顶点的树,顶点编号为 到 。树的第 条边连接顶点 和顶点 ,为无向边。
对于 到 的一个排列 ,定义数列 如下:
- 初始为空。对每个顶点 ,在顶点 上写下 。
- 按照 的顺序,依次进行以下操作:
- 如果顶点 是孤立点,则在 的末尾添加 。
- 否则,从与顶点 相邻的顶点中,选择写有最小整数的顶点。将该顶点上写的整数添加到 的末尾,并删除顶点 与该顶点之间的边。
请你在所有可能的 中,求出字典序最小的一个。
给定 组测试数据,请分别输出答案。
输入格式
输入按以下格式从标准输入读入:
每组数据格式如下:
输出格式
输出 行。第 行输出第 个测试用例的答案。
样例 1
输入
3
5
1 2
2 3
2 4
4 5
8
8 6
7 2
2 1
3 7
5 6
1 6
4 3
7
7 1
5 2
1 2
6 5
4 1
5 3
输出
1 2 0 1 3
1 2 2 3 1 4 0 0
1 2 2 0 3 0 4
说明/提示
数据范围
- 给定的图一定是一棵树
- 输入的所有数均为整数
- 所有测试用例中 的总和不超过
样例解释 1
对于第 个测试用例, 时,,具体过程如下:
- 顶点 相邻顶点中,写有最小整数的是顶点 。将 添加到 末尾,并删除顶点 与顶点 的边。
- 顶点 相邻顶点中,写有最小整数的是顶点 。将 添加到 末尾,并删除顶点 与顶点 的边。
- 顶点 是孤立点,因此在 末尾添加 。
- 顶点 相邻顶点中,写有最小整数的是顶点 。将 添加到 末尾,并删除顶点 与顶点 的边。
- 顶点 相邻顶点中,写有最小整数的是顶点 。将 添加到 末尾,并删除顶点 与顶点 的边。
可以证明,这是所有可能的 中字典序最小的。
由 ChatGPT 4.1 翻译