5815. 匹配(match)
时间限制:1000 MS 内存限制:256 MB
题目描述
**题目描述** 有一棵\(n\)个点\(n - 1\)条边的树,你可以选择一个边集然后删除,一共有\(2^{n - 1}\)种删除方法。 你想知道有多少种删除方法,使得剩下的图里面,最大匹配的大小能被\(m\)整除。输出答案对\(998244353\)取模的值。 最大匹配就是选一些边,使得每个点只和这个边集里至多一条边相连,并且边集最大。 **输入格式** 第一行,两个整数\(n,m\)。 接下来\(n - 1\)行,每行两个数表示一条边。 **输出格式** 输出一个数,表示答案。 **样例输入 1** ``` 4 2 1 2 2 3 3 4 ``` **样例输出 1** ``` 3 ``` **样例输入输出 2** 见下发文件。 **数据规模** 共 10 个测试点。 - 测试点1,2满足\(n \leq 20\)。 - 测试点3,4满足树是一条链。 - 测试点5,6,7满足\(n \leq 2 \times 10^3\)。 - 对于所有数据,满足\(1 \leq n \leq 5 \times 10^4\),\(1 \leq m \leq 200\)。