#CF280C. Game on Tree

Game on Tree

树上的游戏

红叶有一棵有根树,由 nn 个节点组成。树的节点从 11nn 编号。根节点编号为 11。红叶决定在这棵树上玩一个游戏。

游戏由若干步骤组成。在每一步,红叶从剩余的树节点中均匀随机选择一个节点(记作 vv),然后从树中删除以 vv 为根的整个子树中的所有节点。节点 vv 也被删除。当树中没有节点时游戏结束。换句话说,游戏在选择了节点 11 的那一步之后结束。

每次红叶在剩余的所有节点中均匀随机选择一个新节点。你的任务是求出所描述游戏中步数的期望值。

输入

第一行包含整数 nn1n1051 \le n \le 10^5)——树中的节点数。接下来 n1n-1 行包含树的边。第 ii 行包含整数 aia_ibib_i1ai,bin1 \le a_i, b_i \le naibia_i \ne b_i)——第 ii 条边连接的两个节点。

保证给定的图是一棵树。

输出

输出一个实数——所描述游戏中步数的期望值。

如果绝对误差或相对误差不超过 10610^{-6},则认为答案正确。

示例输入1

2  
1 2  

输出1


1.50000000000000000000  

输入2


3  
1 2  
1 3 

输出2


2.00000000000000000000  

注意

在第一个样例中,有两种情况。一种是直接删除根,另一种是在一步之后删除根。因此期望步数为: 1×(1/2)+2×(1/2)=1.51 \times (1/2) + 2 \times (1/2) = 1.5

在第二个样例中,情况更复杂。有两种情况可以归结为第一个样例,还有一种情况是一次清除。因此期望步数为: $1 \times (1/3) + (1+1.5) \times (2/3) = (1/3) + (5/3) = 2$