#CF280C. Game on Tree
Game on Tree
树上的游戏
红叶有一棵有根树,由 个节点组成。树的节点从 到 编号。根节点编号为 。红叶决定在这棵树上玩一个游戏。
游戏由若干步骤组成。在每一步,红叶从剩余的树节点中均匀随机选择一个节点(记作 ),然后从树中删除以 为根的整个子树中的所有节点。节点 也被删除。当树中没有节点时游戏结束。换句话说,游戏在选择了节点 的那一步之后结束。
每次红叶在剩余的所有节点中均匀随机选择一个新节点。你的任务是求出所描述游戏中步数的期望值。
输入
第一行包含整数 ()——树中的节点数。接下来 行包含树的边。第 行包含整数 ,(;)——第 条边连接的两个节点。
保证给定的图是一棵树。
输出
输出一个实数——所描述游戏中步数的期望值。
如果绝对误差或相对误差不超过 ,则认为答案正确。
示例输入1
2
1 2
输出1
1.50000000000000000000
输入2
3
1 2
1 3
输出2
2.00000000000000000000
注意
在第一个样例中,有两种情况。一种是直接删除根,另一种是在一步之后删除根。因此期望步数为:
在第二个样例中,情况更复杂。有两种情况可以归结为第一个样例,还有一种情况是一次清除。因此期望步数为: $1 \times (1/3) + (1+1.5) \times (2/3) = (1/3) + (5/3) = 2$