CF763D.Timofey and a flat tree

省选/NOI-

通过率:0%

时间限制:4.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Little Timofey has a big tree — an undirected connected graph with n vertices and no simple cycles. He likes to walk along it. His tree is flat so when he walks along it he sees it entirely. Quite naturally, when he stands on a vertex, he sees the tree as a rooted tree with the root in this vertex.

Timofey assumes that the more non-isomorphic subtrees are there in the tree, the more beautiful the tree is. A subtree of a vertex is a subgraph containing this vertex and all its descendants. You should tell Timofey the vertex in which he should stand to see the most beautiful rooted tree.

Subtrees of vertices u and v are isomorphic if the number of children of u equals the number of children of v, and their children can be arranged in such a way that the subtree of the first son of u is isomorphic to the subtree of the first son of v, the subtree of the second son of u is isomorphic to the subtree of the second son of v, and so on. In particular, subtrees consisting of single vertex are isomorphic to each other.

小蒂莫费有一棵大树——一个包含 nn 个顶点的无向连通图,且不含简单环(即一棵树)。他喜欢沿着这棵树散步。他的树是“平铺”的,因此当他沿树行走时,整棵树都尽收眼底。很自然地,当他站在某个顶点上时,他会将这棵树看作以该顶点为根的有根树。

蒂莫费认为:一棵树中互不同构的子树种类越多,这棵树就越美丽。一个顶点的子树是指包含该顶点及其所有后代的子图。你需要告诉蒂莫费:他应站在哪个顶点上,才能看到最美丽的有根树。

顶点 uu 与顶点 vv 的子树是同构的,当且仅当 uu 的子节点数等于 vv 的子节点数,且其子节点可被适当排序,使得 uu 的第一个子节点的子树与 vv 的第一个子节点的子树同构,uu 的第二个子节点的子树与 vv 的第二个子节点的子树同构,依此类推。特别地,所有仅含单个顶点的子树彼此同构。

输入格式

First line contains single integer n (1 ≤ n ≤ 105) — number of vertices in the tree.

Each of the next n - 1 lines contains two integers u__i and v__i (1 ≤ u__i, v__i ≤ 105, u__i ≠ v__i), denoting the vertices the i-th edge connects.

It is guaranteed that the given graph is a tree.

第一行包含一个整数 nn(1≤n≤1051 \leq n \leq 10^5)——树中顶点的数量。

接下来的 n−1n-1 行,每行包含两个整数 uiu_i 和 viv_i(1≤ui,vi≤1051 \leq u_i, v_i \leq 10^5,ui≠viu_i \neq v_i),表示第 ii 条边所连接的两个顶点。

保证给定的图是一棵树。

输出格式

Print single integer — the index of the vertex in which Timofey should stand. If there are many answers, you can print any of them.

输出一个整数——Timofey 应该站立的顶点的索引。如果存在多个答案,输出任意一个即可。

输入输出样例

  • 输入#1

    3
    1 2
    2 3

    输出#1

    1
  • 输入#2

    7
    1 2
    4 2
    2 3
    5 6
    6 7
    3 7

    输出#2

    1
  • 输入#3

    10
    1 7
    1 8
    9 4
    5 1
    9 2
    3 5
    10 6
    10 9
    5 10

    输出#3

    2

说明/提示

In the first example we can stand in the vertex 1 or in the vertex 3 so that every subtree is non-isomorphic. If we stand in the vertex 2, then subtrees of vertices 1 and 3 are isomorphic.

In the second example, if we stand in the vertex 1, then only subtrees of vertices 4 and 5 are isomorphic.

In the third example, if we stand in the vertex 1, then subtrees of vertices 2, 3, 4, 6, 7 and 8 are isomorphic. If we stand in the vertex 2, than only subtrees of vertices 3, 4, 6, 7 and 8 are isomorphic. If we stand in the vertex 5, then subtrees of vertices 2, 3, 4, 6, 7 and 8 are isomorphic, and subtrees of vertices 1 and 9 are isomorphic as well:

1 9
/\ /\
7 8 4 2

在第一个例子中,我们可以站在顶点 1 或顶点 3 处,使得所有子树互不同构。如果站在顶点 2,则顶点 1 和顶点 3 的子树同构。

在第二个例子中,如果站在顶点 1,则仅有顶点 4 和顶点 5 的子树同构。

在第三个例子中,如果站在顶点 1,则顶点 2、3、4、6、7 和 8 的子树同构;如果站在顶点 2,则仅有顶点 3、4、6、7 和 8 的子树同构;如果站在顶点 5,则顶点 2、3、4、6、7 和 8 的子树同构,且顶点 1 和顶点 9 的子树也同构:

1 9
/\ /\
7 8 4 2

输入解题思路,AI测评打分。不知道怎么写?

首页