Educational DP Contest AtCoder V - Subtree

View as PDF

Submit solution

Points: 20
Time limit: 1.0s
Memory limit: 1G

Problem type

There is a tree with N vertices, numbered 1,2,,N. For each i (1iN1), the i-th edge connects Vertex xi and yi.

Taro has decided to paint each vertex in white or black, so that any black vertex can be reached from any other black vertex by passing through only black vertices.

You are given a positive integer M. For each v (1vN), answer the following question:

  • Assuming that Vertex v has to be black, find the number of ways in which the vertices can be painted, modulo M.

Constraints

  • All values in input are integers.
  • 1N105
  • 2M109
  • 1xi,yiN
  • The given graph is a tree.

Input Specification

The first line will contain two integers N and M.

The next N1 lines will each contain two integers xi and yi.

Output Specification

Print N lines. The v-th (1vN) line should contain the answer to the following question:

  • Assuming that Vertex v has to be black, find the number of ways in which the vertices can be painted, modulo M.

Sample Input 1

Copy
3 100
1 2
2 3

Sample Output 1

Copy
3
4
3

Explanation For Sample 1

There are seven ways to paint the vertices, as shown in the figure below. Among them, there are three ways such that Vertex 1 is black, four ways such that Vertex 2 is black and three ways such that Vertex 3 is black.

Sample Input 2

Copy
4 100
1 2
1 3
1 4

Sample Output 2

Copy
8
5
5
5

Sample Input 3

Copy
1 100

Sample Output 3

Copy
1

Sample Input 4

Copy
10 2
8 5
10 8
6 5
1 5
4 8
2 10
3 6
9 2
1 7

Sample Output 4

Copy
0
0
1
1
1
0
1
0
1
1

Explanation For Sample 4

Be sure to print the answers modulo M.


Comments

There are no comments at the moment.