#ATagc016f. [AGC016F] Games on DAG
[AGC016F] Games on DAG
题目描述
有一个包含 个顶点、 条边的有向图 。顶点编号为 到 。边的编号为 到 。边 从顶点 指向顶点 。此外,所有的边都满足 ,且不存在重边。
现在可以从 的 条边中选择任意一个子集,并从图 中删去这些边,得到一个新的图 。总共有 种不同的 。
在每一个 上,高桥君和青木君玩如下的游戏。首先,在顶点 和 各放一个棋子。高桥君先手,然后两人轮流进行如下操作:
- 选择某一个棋子所在的顶点 出发的某条边 ,将该棋子从 移动到 (如果有两个棋子在 ,则只能移动其中一个)。允许两个棋子停在同一个顶点。
无法进行操作的一方判负。两人都采取最优策略。
在 种 中,使高桥君获胜的 有多少种?请输出这个数量对 取模的结果。
输入格式
输入从标准输入中给出,格式如下:
输出格式
输出使高桥君获胜的 的数量。结果需要对 取模。
样例 1
输入
2 1
1 2
输出
1
样例 2
输入
3 3
1 2
1 3
2 3
输出
6
样例 3
输入
4 2
1 3
2 4
输出
2
样例 4
输入
5 10
2 4
3 4
2 5
2 3
1 2
3 5
1 3
1 5
4 5
1 4
输出
816
说明/提示
约束
- 所有的 互不相同。
样例解释 1
有如下 种可能。高桥君获胜用 ○ ,青木君获胜用 × 表示。

样例解释 2
有如下 种可能。

由 ChatGPT 5 翻译