atcoder#ABC160F. [ABC160F] Distributing Integers
[ABC160F] Distributing Integers
Score : points
Problem Statement
We have a tree with vertices numbered to . The -th edge in this tree connects Vertex and . For each , solve the problem below:
- Consider writing a number on each vertex in the tree in the following manner:- First, write on Vertex .
- Then, for each of the numbers in this order, write the number on the vertex chosen as follows:- Choose a vertex that still does not have a number written on it and is adjacent to a vertex with a number already written on it. If there are multiple such vertices, choose one of them at random.
- Find the number of ways in which we can write the numbers on the vertices, modulo .
Constraints
- The given graph is a tree.
Input
Input is given from Standard Input in the following format:
Output
For each in this order, print a line containing the answer to the problem.
3
1 2
1 3
2
1
1
The graph in this input is as follows:
For , there are two ways in which we can write the numbers on the vertices, as follows:
- Writing on Vertex , respectively
- Writing on Vertex , respectively
2
1 2
1
1
The graph in this input is as follows:
5
1 2
2 3
3 4
3 5
2
8
12
3
3
The graph in this input is as follows:
8
1 2
2 3
3 4
3 5
3 6
6 7
6 8
40
280
840
120
120
504
72
72
The graph in this input is as follows: