#P14671. [ICPC 2025 Seoul R] Clean Arrangement
[ICPC 2025 Seoul R] Clean Arrangement
Description
在图绘制中,一棵有根(连通)树 (具有 个顶点)的线性排列是一种平面绘制方式:树的 个顶点被放置于一条水平线(例如 轴)上,而 条边则绘制为连接其端点的半圆弧,位于该线上方,如图 1 所示。这样的线性排列 将每个顶点映射到一个从 到 的不同整数,代表其沿 轴的坐标。
:::align{center}

图 1. (左)一棵有九个顶点且以顶点 1 为根的有根树 。
(中) 的一个洁净排列。
(右) 的一个不洁净排列,因为红色边 覆盖了根。
:::
在一个线性排列 中,两个顶点 和 之间的距离 定义为它们 坐标之差的绝对值,即 。形式上,对于一棵有根树 ,其线性排列 的代价定义为 。
一棵有根树 的洁净排列 是一种特殊的线性排列,它同时满足以下两个条件:
- 中没有边交叉(除了共享端点的边之间)。
- 没有边覆盖 的根顶点 ,即不存在边 使得 。
例如,图 1 中间是左边 的一个洁净排列,但右边不洁净,因为边 覆盖了根顶点 1。中间洁净排列的代价是 ,其中有三条距离为 的边和五条距离为 的边。这个代价是所有 的洁净排列中最小的。
给定一棵以顶点 为根的有根树,请编写一个程序,输出该树所有洁净排列中可能的最小代价。
Input Format
你的程序需要从标准输入读取数据。输入的第一行包含一个整数 (),其中 是有根树的顶点数。顶点编号从 到 ,根顶点是 。接下来的 行,每行包含两个正整数 和 ,表示树的一条(无向)边 的端点,其中 和 是 到 之间的不同整数。
Output Format
你的程序需要向标准输出写入数据。输出恰好一行。该行应包含以顶点 为根的树的洁净排列的最小代价。
以下展示了两个测试用例的样例输入和输出。第二个测试用例对应图 1。
4
1 2
3 2
2 4
4
9
2 4
2 5
7 3
9 7
1 2
3 1
7 8
6 2
11
Hint
翻译由 DeepSeek V3 完成
京公网安备 11011102002149号