/ Vijos / 题库 /

树上的最大匹配

树上的最大匹配

描述

doc 的学姐曾经也是一名 oier, 她有的时候会询问 doc 各种有趣的竞赛问题
虽然很简单, 但是对于 doc 来说都是曾经很美好的回忆

今天, 学姐不想出去逛街, 因为她看到了一道题目并为此发愁在.

树上的最大匹配是多少? 最大匹配解的方案共有多少组?
(首先树可以被看作是一个无向图G.
(对于无向图G来说, 其上的最大匹配是边集的一个子集, 满足:
(对于G中每一个点来说, 都只有最多一条与之相连的边在这个子集中.
(最大匹配就是这个子集大小可以到达的最大值.

格式

输入格式

第一行输入一个整数 n, 表示树上的结点个数. 所有结点依次编号为 1 到 n.
之后 n-1 行, 每行有两个整数 a , b 表示有一条链接结点 a 和 b的边.
最后一行有一个整数 m, 表明对于最大匹配解的方案, 我们只需要输出对 m 取的余数.

输出格式

第一行有一个整数, 表示最大匹配有多大.
第二行有一个整数, 表示对 m 取余后的方案总数.

样例1

样例输入1

5
1 2
3 2
4 5
1 4
17

样例输出1

2
3

限制

对于30%的数据, n<=2500.
对于70%的数据, n<=100,000.
对于100%的数据, n<=1,500,000.
m为32位有符号整数

信息

ID
1892
难度
9
分类
(无)
标签
(无)
递交数
524
已通过
13
通过率
2%
被复制
2
上传者

相关

在下列训练计划中:

RP++分类题库

在下列比赛中:

NOIP模拟赛之被时光掩埋的秘密