#P15638. [Bulgarian2025冬季赛]Squirrel松鼠
[Bulgarian2025冬季赛]Squirrel松鼠
题目描述
一只松鼠站在一棵长满橡子的树根处,准备收集橡子。
这棵树有 个分叉点和 条树枝,每个分叉点编号为 到 ,其中 号点是树根。每个分叉点都有一个橡子。
松鼠一开始在根节点,并且已经拿走了根节点的橡子。接下来,它需要选择一串树枝进行移动,使得每个分叉点被访问的次数恰好等于与它相连的树枝数量。每当松鼠第一次访问某个分叉点时,就会拿走这个分叉点上的橡子。
松鼠有 个要求。第 个要求为 ,表示 号分叉点的橡子必须在 号分叉点的橡子之前被拿走。
请计算满足所有要求的不同移动方式数量,答案对 取模。
输入格式
第一行输入两个整数 。
接下来 行,每行输入两个不同整数 ,表示一条树枝。
接下来 行,每行输入两个不同整数 ,表示一个先后顺序要求。
输出格式
输出一个整数,表示满足全部要求的移动方式数量对 取模的结果。
数据范围
- ,其中 为一个分叉点连接的树枝最大数量。
子任务
| 子任务 | 分值 | 依赖 | |||
|---|---|---|---|---|---|
| 1 | 26 | 无 | |||
| 2 | 11 | ||||
| 3 | 9 | 2 | |||
| 4 | 2-3 | ||||
| 5 | 1-4 | ||||
| 6 | 12 | 2-3 | |||
| 7 | 2-4,6 | ||||
| 8 | 1-7 | ||||
样例 1
输入
3 2
1 2
1 3
1 2
3 1
输出
0
样例 2
输入
6 2
1 2
1 3
1 4
3 5
3 6
5 6
5 4
输出
3