#arc088d. [arc088_d]Christmas Tree

[arc088_d]Christmas Tree

题目描述

Takahashi 决定在 AtCoder 公司的圣诞派对上制作一个“圣诞树”。

圣诞树是一个有 NN 个顶点和 N1N-1 条边的树,其中每条边 (1iN1)(1 \leq i\leq N-1) 连接顶点 aia_ibib_i

他想要按照以下方式制作:

  • 指定两个非负整数 AABB
  • 准备 AA 条长度至多为 BB 的“圣诞路径”。这里,长度为 XX 的圣诞路径是一个图,具有 X+1X+1 个顶点和 XX 条边,如果我们适当地给顶点 11X+1X+1 编号,则第 ii 条边 (1iX)(1 \leq i\leq X) 将连接顶点 iii+1i+1
  • 重复以下操作,直到他有一棵连通的树为止:
    • 选择属于不同连通分量的两个顶点 xxyy。将 xxyy 合并成一个顶点。更具体地说,对于与顶点 yy 相关的每条边 (p,y)(p,y) ,添加边 (p,x)(p,x) 。然后,删除顶点 yy 及与顶点 yy 相关的所有边。
  • 在树中适当地编号顶点。

Takahashi 希望找到字典序最小的一对 (A,B)(A,B),使得他可以制作一个圣诞树,也就是找到最小的 AA,并在最小化 AA 的条件下找到最小的 BB

请解决这个问题。

约束条件

  • 2N1052 \leq N \leq 10^5
  • 1ai,biN1 \leq a_i,b_i \leq N
  • 给定的图是一棵树。

输入

输入数据从标准输入读取。数据格式如下:

NN a1a_1 b1b_1 : aN1a_{N-1} bN1b_{N-1}

输出

对于字典序最小的 (A,B)(A,B),按照顺序以空格分隔打印 AABB


示例输入1

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

示例输出1

3 2

我们可以制作如下的圣诞树:


示例输入2

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

示例输出2

2 5

示例输入3

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

示例输出3

3 4