As we all know, Matt is an outstanding contestant in ACM-ICPC. Graph problems are his favorite.
Once, he came up with a simple algorithm for finding the maximal independent set in trees by mistake.
A tree is a connected undirected graph without cycles, and an independent set is subset of the vertex set which contains no adjacent vertex pairs.
Suppose that the tree contains N vertices, conveniently numbered by 1,2, . . . , N. First, Matt picks a permutation p
1, p
2, . . . , p
N of {1, 2, 3, . . . , N } randomly and uniformly.
After picking the permutation, Matt does the following procedure.
1.Set S =
.
2.Consider the vertex p
1, p
2, . . . , p
N accordingly. For vertex p
i, if and only if there is no vertex in S which is adjacent to p
i, add vertex p
i into S.
3.Output the set S.
Clearly the above algorithm does not always output the maximal independent set. Matt would like to know the expected size of set S instead.