#ATagc024d. [AGC024D] Isomorphism Freak

[AGC024D] Isomorphism Freak

题目描述

将树 GG 的顶点用若干种颜色进行染色,如果对于任意两个被染成同一种颜色的顶点 u,vu,v,以 uu 为根的有根树和以 vv 为根的有根树同构,则称这种染色方式为良好染色

GG多彩度定义为 GG 的所有良好染色中所使用颜色种类数的最小值。

给定一棵有 NN 个顶点的树,顶点编号为 11NN,第 ii 条边连接顶点 aia_i 和顶点 bib_i。你可以多次进行如下操作,构造出一棵新的树 TT

  • 新建一个顶点,从当前树中选择一个顶点,将新顶点与其通过一条边连接。

请你求出所有可能构造出的树 TT 中,多彩度的最小值。并且,在达到该最小多彩度的情况下,输出此时树 TT 的叶子(度数为 11 的顶点)数的最小值。

输入格式

输入以如下格式从标准输入读入:

NN
a1a_1 b1b_1
a2a_2 b2b_2
\vdots
aN1a_{N-1} bN1b_{N-1}

输出格式

请输出两个整数,用空格隔开。首先输出所有可能构造出的树 TT 中的最小多彩度,然后输出在达到该最小多彩度时树 TT 的最小叶子数。

在本题的约束下,输出的值保证不会超过 6464 位有符号整数的范围。

样例 1

输入

5
1 2
2 3
3 4
3 5

输出

2 4

样例 2

输入

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

输出

3 4

样例 3

输入

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

输出

4 6

样例 4

输入

13
5 6
6 4
2 8
4 7
8 9
3 2
10 4
11 10
2 4
13 10
1 8
12 1

输出

4 12

说明/提示

说明

uu 为根的有根树和以 vv 为根的有根树同构,指的是存在 GG 的顶点集合到自身的一个双射 fuvf_{uv},满足:

  • fuv(u)=vf_{uv}(u) = v
  • 对于任意两个顶点对 (a,b)(a, b)(a,b)(a, b) 有边当且仅当 (fuv(a),fuv(b))(f_{uv}(a), f_{uv}(b)) 有边

数据范围

  • 2N1002 \leq N \leq 100
  • 1ai,biN (1iN1)1 \leq a_i, b_i \leq N \ (1 \leq i \leq N-1)
  • 给定的图保证是一棵树

样例说明 1

如果新建顶点 66 并与顶点 22 相连,将顶点 (1,4,5,6)(1,4,5,6) 染成红色,顶点 (2,3)(2,3) 染成蓝色,这是一种良好染色。用 11 种颜色染所有顶点不是良好染色,因此该树的多彩度为 22。这种情况下叶子数为 44,所以输出 2 42\ 4

由 ChatGPT 4.1 翻译