#aTCODERDPROUNDV. AT_dp_v Subtree

AT_dp_v Subtree

AT_dp_v Subtree

题目描述

有一棵包含 NN 个顶点的树。顶点编号为 1,2,,N1, 2, \ldots, N。对于每个 ii1iN11 \leq i \leq N-1),第 ii 条边连接顶点 xix_iyiy_i

太郎君打算将每个顶点涂成白色或黑色。此时,需要保证任意两个黑色顶点之间,都可以仅通过黑色顶点相互到达。

给定一个正整数 MM。对于每个 vv1vN1 \leq v \leq N),请回答以下问题:

  • 以顶点 vv 为黑色的所有顶点染色方案有多少种?请输出对 MM 取模的结果。

输入格式

输入以如下格式从标准输入读入。

NN MM
x1x_1 y1y_1
x2x_2 y2y_2
\vdots
xN1x_{N-1} yN1y_{N-1}

输出格式

输出 NN 行。对于每个 vv1vN1 \leq v \leq N),第 vv 行输出以下问题的答案:

  • 以顶点 vv 为黑色的所有顶点染色方案有多少种?请输出对 MM 取模的结果。

输入输出样例 #1

输入 #1

3 100
1 2
2 3

输出 #1

3
4
3

输入输出样例 #2

输入 #2

4 100
1 2
1 3
1 4

输出 #2

8
5
5
5

输入输出样例 #3

输入 #3

1 100

输出 #3

1

输入输出样例 #4

输入 #4

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

输出 #4

0
0
1
1
1
0
1
0
1
1

说明/提示

限制条件

  • 所有输入均为整数。
  • 1N1051 \leq N \leq 10^5
  • 2M1092 \leq M \leq 10^9
  • 1xi,yiN1 \leq x_i, y_i \leq N
  • 给定的图为一棵树。

样例解释 1

顶点染色的方案共有 77 种。在这些方案中,顶点 11 为黑色的有 33 种,顶点 22 为黑色的有 44 种,顶点 33 为黑色的有 33 种。

样例解释 4

不要忘记输出答案对 MM 取模的结果。

由 ChatGPT 4.1 翻译