【模板】DAG的拓扑排序方案计数(状压DP)
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
给定一张包含 个点、 条有向边的有向无环图(),点从 到 编号。
定义“拓扑排序”为将所有点排成一个序列,使得对于每条有向边 ,在序列中 必须出现在 之前。
请计算该图不同拓扑排序的数量,答案对 取模。
输入格式
- 第一行两个整数 。
- 接下来 行,每行两个整数 ,表示一条有向边 。
输出格式
输出一个整数,表示拓扑排序方案数对 取模的结果。
输入输出样例
输入 #1
3 2
1 2
1 3
输出 #1
2
解释:
可行的拓扑序为 、。
输入 #2
10 17
4 1
1 2
5 1
5 10
7 4
5 3
6 3
6 8
10 2
4 2
6 9
7 10
10 8
6 5
3 10
7 9
1 8
输出 #2
450
数据范围
- 保证点编号在
子任务
| 子任务编号 | 分值 | 限制 |
|---|---|---|
| 1 | 10 | |
| 2 | 30 | |
| 3 | 60 |