atcoder#ABC271F. [ABC271F] XOR on Grid Path
[ABC271F] XOR on Grid Path
题目描述
行 列のマス目があり、上から 行目、左から 列目のマスを と表します。
マス には非負整数 が書かれています。
マス にいるとき、マス のいずれかに移動することができます。ただし、マス目の外に出るような移動はできません。
マス から移動を繰り返してマス にたどり着く方法であって、通ったマス(マス を含む)に書かれた整数の排他的論理和が となるようなものの総数を求めてください。
排他的論理和とは 整数 の排他的論理和 は、以下のように定義されます。 - を二進表記した際の の位の数は、 を二進表記した際の の位の数のうち一方のみが であれば 、そうでなければ である。
例えば、 となります(二進表記すると )。
一般に 個の整数 の排他的論理和は $ (\cdots\ ((p_1\ \oplus\ p_2)\ \oplus\ p_3)\ \oplus\ \cdots\ \oplus\ p_k) $ と定義され、これは の順番によらないことが証明できます。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを出力せよ。
题目大意
给定一个n行n列的矩阵,定义合法路径为只向右或向下的路径,且途径数字异或和为0。求合法路径条数。
3
1 5 2
7 0 5
4 2 3
2
2
1 2
2 1
0
10
1 0 1 0 0 1 0 0 0 1
0 0 0 1 0 1 0 1 1 0
1 0 0 0 1 0 1 0 0 0
0 1 0 0 0 1 1 0 0 1
0 0 1 1 0 1 1 0 1 0
1 0 0 0 1 0 0 1 1 0
1 1 1 0 0 0 1 1 0 0
0 1 1 0 0 1 1 0 1 0
1 0 1 1 0 0 0 0 0 0
1 0 1 1 0 0 1 1 1 0
24307
提示
制約
- $ 0\ \leq\ a_{i,\ j}\ \lt\ 2^{30}\ \,\ (1\ \leq\ i,\ j\ \leq\ N) $
- 入力は全て整数
Sample Explanation 1
次の二通りの方法が条件を満たします。 - $ (1,\ 1)\ \rightarrow\ (1,\ 2)\ \rightarrow\ (1,\ 3)\ \rightarrow\ (2,\ 3)\ \rightarrow\ (3,\ 3) $ - $ (1,\ 1)\ \rightarrow\ (2,\ 1)\ \rightarrow\ (2,\ 2)\ \rightarrow\ (2,\ 3)\ \rightarrow\ (3,\ 3) $