A16252 | Most Different Tree
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Given a tree with $n$ vertices rooted at vertex $1$ , denote it as $G$ . Also denote $P(G)$ as the multiset of subtrees of all vertices in tree $G$ . You need to find a tree $G'$ of size $n$ rooted at vertex $1$ such that the number of subtrees in $P(G')$ that are isomorphic to any subtree in $P(G)$ is minimized.
A subtree of vertex $v$ is a graph that contains all vertices for which vertex $v$ lies on the path from the root of the tree to itself, as well as all edges between these vertices.
Two rooted trees are considered isomorphic if it is possible to relabel the vertices of one of them so that it becomes equal to the other, with the root of the first tree receiving the number of the root of the second tree.
A subtree of vertex $v$ is a graph that contains all vertices for which vertex $v$ lies on the path from the root of the tree to itself, as well as all edges between these vertices.
Two rooted trees are considered isomorphic if it is possible to relabel the vertices of one of them so that it becomes equal to the other, with the root of the first tree receiving the number of the root of the second tree.
输入格式
The first line contains a single integer $n$ ( $2 \le n \le 10^6$ ) - the number of vertices in tree $G$ . Each of the next $n-1$ lines contains two integers $a$ and $b$ $(1 \leq a,b \leq n)$ , indicating that there is an edge between vertices $a$ and $b$ in the tree.
输出格式
Output $n-1$ lines, each line containing two numbers $a$ , $b$ $(1 \leq a,b \leq n)$ - the edges of tree $G'$ . If there are multiple optimal answers, output any.
输入输出样例
输入 #1
2 1 2
输出 #1
1 2
输入 #2
3 1 2 1 3
输出 #2
1 2 2 3
输入 #3
4 1 2 1 3 3 4
输出 #3
1 2 2 3 3 4
暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted