AT_arc183_d.[ARC183D] Keep Perfectly Matched
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一棵包含 N 个顶点的树,顶点编号为 1 到 N。第 i 条边连接顶点 Ai 和顶点 Bi。这里 N 是偶数,并且这棵树存在一个完全匹配。具体来说,对于每个 i(1≤i≤N/2),都有 Ai=i×2−1,Bi=i×2。
你需要进行如下操作共 N/2 次:
- 每次选择两个叶子(度数恰好为 1 的顶点),并将它们从树中删除。此时,删除后的树也必须仍然存在完全匹配。注意,在本题中,顶点数为 0 的情况也视为一棵树。
对于每次操作,其得分定义为“所选的两个顶点之间的距离(即连接这两个顶点的简单路径上的边数)”。
请给出一种操作顺序,使得总得分最大。可以证明,在本题的约束下,总能完成 N/2 次操作。
输入格式
输入从标准输入读入,格式如下:
N A1 B1 A2 B2 ⋮ AN−1 BN−1
输出格式
请按如下格式输出答案:
X1 Y1 X2 Y2 ⋮ XN/2 YN/2
其中,Xi,Yi 表示第 i 次操作中选择的两个顶点。如果有多种方案,输出任意一种均可。
输入输出样例
输入#1
4 1 2 3 4 2 3
输出#1
4 1 2 3
输入#2
8 1 2 3 4 5 6 7 8 2 3 1 5 1 7
输出#2
4 8 7 6 5 3 2 1
输入#3
14 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 8 4 11 5 12 7 13 11 14 9 13
输出#3
1 6 5 2 8 12 3 7 10 4 11 9 13 14
输入#4
20 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 8 10 16 18 16 19 5 9 10 17 2 13 7 14 3 7 3 12
输出#4
6 1 2 15 20 13 14 19 16 4 11 18 17 12 3 5 9 7 8 10
说明/提示
限制条件
- 2≤N≤250000
- N 是偶数
- 1≤Ai<Bi≤N(1≤i≤N−1)
- Ai=i×2−1,Bi=i×2(1≤i≤N/2)
- 给定的图是一棵树
- 输入的所有数值均为整数
样例解释 1
输出样例的操作顺序如下:
- 第 1 次操作:删除顶点 4,1。剩下的树包含顶点 2,3,仍然存在完全匹配。该操作的得分为 3。
- 第 2 次操作:删除顶点 2,3。剩下的树为 0 个顶点,仍然存在完全匹配。该操作的得分为 1。
- 总得分为 3+1=4。无法使总得分超过 4,因此该输出是正确的。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?