atcoder#AGC016F. [AGC016F] Games on DAG
[AGC016F] Games on DAG
题目描述
頂点 辺の有向グラフ があります。 頂点には から まで番号が振られています。 辺には から まで番号が振られています。 辺 は頂点 から へ張られています。 ただし、
の 本の辺集合からある部分集合を選び、 からそれらの辺を取り除いてグラフ を作ることを考えます。 このとき、グラフ は 通りあり得ます。
グラフ の上で、高橋君と青木君が次のようなゲームで勝負します。 まず、頂点 , に駒をひとつずつ置きます。 高橋君から始め、高橋君と青木君が交互に次の操作を行います。
- 頂点 に駒が置かれているような辺 を選び、頂点 の駒 ( つある場合は一方のみ) を頂点 へ移動する。 つの駒が同一の頂点に置かれてもよい。
先に操作を行えなくなった方が負けです。 二人は最適に行動するとします。
通りの のうち、高橋君が勝つような は何通りでしょうか? で割った余りを求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
高橋君が勝つような は何通りか? で割った余りを出力せよ。
题目大意
给定一个个点条边的DAG,对于每条边都满足,号点各一个石头,每次可以沿DAG上的边移动一颗石头,不能移动则输,求所有个边的子集中,只保留这个子集先手必胜的方案个数
2 1
1 2
1
3 3
1 2
1 3
2 3
6
4 2
1 3
2 4
2
5 10
2 4
3 4
2 5
2 3
1 2
3 5
1 3
1 5
4 5
1 4
816
提示
制約
- はすべて相異なる。
Sample Explanation 1
は次図の 通りです。 高橋君が勝つ場合は ○ で、負ける場合は × で表しています。 ![b250f23c38d0f5ec2204bd714e7c1516.png](https://atcoder.jp/img/agc016/b250f23c38d0f5ec2204bd714e7c1516.png)
Sample Explanation 2
は次図の 通りです。 ![8192fd32f894f708c5e4a60dcdea9d35.png](https://atcoder.jp/img/agc016/8192fd32f894f708c5e4a60dcdea9d35.png)