#x1025. CF1060F Shrinking Tree

CF1060F Shrinking Tree

Shrinking Tree

题面翻译

对于一棵有 nn 个节点的树 TT 。当 TT 的节点数多于一个时,反复执行以下操作:

  • 等概率地选取 TT 中的一条边。
  • 收缩选取的边:即合并这条边连接的两个点 uuvv 。得到的新点的编号等概率地从 uuvv 中选取一个。

当这个过程结束时, TT 只剩一个节点了,它的编号可能是 1,,n1,\ldots,n 中的任意一个数。对于每个编号,请输出最终得到这个编号的概率。

1n501\le n\le 50

题目描述

Consider a tree T T (that is, a connected graph without cycles) with n n vertices labelled 1 1 through n n . We start the following process with T T : while T T has more than one vertex, do the following:

  • choose a random edge of T T equiprobably;
  • shrink the chosen edge: if the edge was connecting vertices v v and u u , erase both v v and u u and create a new vertex adjacent to all vertices previously adjacent to either v v or u u . The new vertex is labelled either v v or u u equiprobably.

At the end of the process, T T consists of a single vertex labelled with one of the numbers 1,,n 1, \ldots, n . For each of the numbers, what is the probability of this number becoming the label of the final vertex?

输入格式

The first line contains a single integer n n ( 1n50 1 \leq n \leq 50 ).

The following n1 n - 1 lines describe the tree edges. Each of these lines contains two integers ui,vi u_i, v_i — labels of vertices connected by the respective edge ( 1ui,vin 1 \leq u_i, v_i \leq n , uivi u_i \neq v_i ). It is guaranteed that the given graph is a tree.

输出格式

Print n n floating numbers — the desired probabilities for labels 1,,n 1, \ldots, n respectively. All numbers should be correct up to 106 10^{-6} relative or absolute precision.

样例 #1

样例输入 #1

4
1 2
1 3
1 4

样例输出 #1

0.1250000000
0.2916666667
0.2916666667
0.2916666667

样例 #2

样例输入 #2

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

样例输出 #2

0.0850694444
0.0664062500
0.0664062500
0.1955295139
0.1955295139
0.1955295139
0.1955295139

提示

In the first sample, the resulting vertex has label 1 if and only if for all three edges the label 1 survives, hence the probability is 1/23=1/8 1/2^3 = 1/8 . All other labels have equal probability due to symmetry, hence each of them has probability (11/8)/3=7/24 (1 - 1/8) / 3 = 7/24 .