#abc271f. [abc271_f]XOR on Grid Path
[abc271_f]XOR on Grid Path
問題文
行 列のマス目があり、上から 行目、左から 列目のマスを と表します。
マス には非負整数 が書かれています。
マス にいるとき、マス のいずれかに移動することができます。ただし、マス目の外に出るような移動はできません。
マス から移動を繰り返してマス にたどり着く方法であって、通ったマス(マス を含む)に書かれた整数の排他的論理和が となるようなものの総数を求めてください。
排他的論理和とは 整数 の排他的論理和 は、以下のように定義されます。
- を二進表記した際の の位の数は、 を二進表記した際の の位の数のうち一方のみが であれば 、そうでなければ である。
例えば、 となります(二進表記すると )。
一般に 個の整数 の排他的論理和は $(\\cdots ((p_1 \\oplus p_2) \\oplus p_3) \\oplus \\cdots \\oplus p_k)$ と定義され、これは の順番によらないことが証明できます。
制約
- $0 \\leq a_{i, j} \\lt 2^{30} \\, (1 \\leq i, j \\leq N)$
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを出力せよ。
入力例 1
3
1 5 2
7 0 5
4 2 3
出力例 1
2
次の二通りの方法が条件を満たします。
- $(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)$
入力例 2
2
1 2
2 1
出力例 2
0
入力例 3
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
出力例 3
24307