CF1975D.Paint the Tree
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
378QAQ 有一棵包含 n 个顶点的树。初始时,所有顶点都是白色的。
树上有两个棋子,分别叫做 PA 和 PB。PA 和 PB 分别初始位于顶点 a 和 b。每一步,378QAQ 会按如下顺序进行操作:
- 将 PA 移动到相邻的一个顶点。如果目标顶点是白色,则将其染成红色。
- 将 PB 移动到相邻的一个顶点。如果目标顶点是红色,则将其染成蓝色。
初始时,顶点 a 被染成红色。如果 a=b,则顶点 a 被染成蓝色。注意,每一步两个棋子都必须移动。两个棋子可以同时位于同一个顶点。
378QAQ 想知道,将所有顶点都染成蓝色所需的最少步数。
输入格式
每组测试数据包含多组测试用例。第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。
每组测试用例的第一行包含一个整数 n(1≤n≤2⋅105)。
第二行包含两个整数 a 和 b(1≤a,b≤n)。
接下来 n−1 行,每行包含两个整数 xi 和 yi(1≤xi,yi≤n),表示在顶点 xi 和 yi 之间有一条边。保证这些边构成一棵树。
保证所有测试用例中 n 的总和不超过 2⋅105。
输出格式
对于每组测试用例,输出将所有顶点染成蓝色所需的最少步数。
输入输出样例
输入#1
3 2 1 2 1 2 5 1 2 1 2 1 3 1 4 1 5 8 5 4 7 1 1 5 1 8 8 3 7 2 8 6 3 4
输出#1
2 8 13
说明/提示
在第一个测试用例中,378QAQ 可以按如下顺序将所有顶点染成蓝色:
- 初始时,PA 位于顶点 1,PB 位于顶点 2。顶点 1 被染成红色,顶点 2 是白色。
- 378QAQ 将 PA 移动到顶点 2 并将其染成红色。然后将 PB 移动到顶点 1 并将其染成蓝色。
- 378QAQ 将 PA 移动到顶点 1。然后将 PB 移动到顶点 2 并将其染成蓝色。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?