## Subtree

View as PDF

Points: 20 (partial)
Time limit: 1.0s
Memory limit: 1G

Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

These problems are from the atcoder DP contest, and were transferred onto DMOJ. All problem statements were made by several atcoder users. As there is no access to the test data, all data is randomly generated. If there are issues with the statement or data, please contact Rimuru or Ninjaclasher on slack.

There is a tree with vertices, numbered . For each , the -th edge connects Vertex and .

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 . For each , answer the following question:

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

#### Constraints

• All values in input are integers.
• The given graph is a tree.

#### Input Specification

The first line will contain two integers and .

The next lines will each contain two integers and .

#### Output Specification

Print lines. The -th ) line should contain the answer to the following question:

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

#### Sample Input 1

3 100
1 2
2 3

#### Sample Output 1

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 is black, four ways such that Vertex is black and three ways such that Vertex is black.

#### Sample Input 2

4 100
1 2
1 3
1 4

#### Sample Output 2

8
5
5
5

#### Sample Input 3

1 100

#### Sample Output 3

1

#### Sample Input 4

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

#### Sample Output 4

0
0
1
1
1
0
1
0
1
1

#### Explanation For Sample 4

Be sure to print the answers modulo .