U611923 连通
题目描述
给定 $n$ 个点的树,第 $i$ 个点有点权 $a_i$.
给定常数 $k$,对于点集 $S$,定义它的权值 $f(S)$ 如下:
如果 $|S| > k$ 或 $S$ 中的点不连通,则 $f(S) = 0$.
否则,$f(S) = \prod_{x \in S}a_x$.
这里规定 $f(\varnothing) = 1$.
对于每个点 $x$,求出 $\sum_{S} f(S)[x \in S]$ 对 $998244353$ 取模的值。
输入格式
第一行两个数 $n$ 和 $k$,表示树的点数以及集合大小的上限。
接下来一行 $n$ 个数 $a_1, a_2,\dots, a_n$,表示每个点的点权。
接下来 $n - 1$ 行每行两个数 $u, v$,表示树上的一条边。
输出格式
输出一行 $n$ 个数,第 $i$ 个表示包含点 $i$ 的点集权值之和模 $998244353$ 的值。
说明/提示
对于 $10\%$ 的数据,$n \leq 50$.
对于 $30\%$ 的数据,$n \leq 200$.
对于 $60\%$ 的数据,$n \leq 1000$.
对于 $100\%$ 的数据,$1 \leq k \leq n \leq 3000,0 \leq a_i \leq 998244352,1 \leq u, v\leq n$,保证所有边构成一棵树。