CF1060F.Shrinking Tree
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Consider a tree T (that is, a connected graph without cycles) with n vertices labelled 1 through n . We start the following process with T : while T has more than one vertex, do the following:
- choose a random edge of T equiprobably;
- shrink the chosen edge: if the edge was connecting vertices v and u , erase both v and u and create a new vertex adjacent to all vertices previously adjacent to either v or u . The new vertex is labelled either v or u equiprobably.
At the end of the process, T consists of a single vertex labelled with one of the numbers 1,…,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 ( 1≤n≤50 ).
The following n−1 lines describe the tree edges. Each of these lines contains two integers ui,vi — labels of vertices connected by the respective edge ( 1≤ui,vi≤n , ui=vi ). It is guaranteed that the given graph is a tree.
输出格式
Print n floating numbers — the desired probabilities for labels 1,…,n respectively. All numbers should be correct up to 10−6 relative or absolute precision.
输入输出样例
输入#1
4 1 2 1 3 1 4
输出#1
0.1250000000 0.2916666667 0.2916666667 0.2916666667
输入#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 . All other labels have equal probability due to symmetry, hence each of them has probability (1−1/8)/3=7/24 .