CF1006F.Xor-Paths
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一个 n×m 的矩形网格。每个格子上写有一个数字,格子 (i,j) 上的数字为 ai,j。
你的任务是计算从左上角 (1,1) 到右下角 (n,m) 的路径中,满足以下条件的路径数量:
- 你只能向右或向下移动。即从 (i,j) 可以移动到 (i,j+1) 或 (i+1,j),不能移出网格。
- 路径上所有格子数字的 异或和 必须等于 k。
求满足条件的路径数量。
输入格式
第一行包含三个整数 n,m,k(1≤n,m≤20,0≤k≤1018)——网格的高度、宽度和目标异或值。
接下来 n 行,每行包含 m 个整数,第 i 行的第 j 个元素为 ai,j(0≤ai,j≤1018)。
输出格式
输出一个整数——从 (1,1) 到 (n,m) 异或和为 k 的路径数量。
输入输出样例
输入#1
3 3 11 2 1 5 7 10 0 12 6 4
输出#1
3
输入#2
3 4 2 1 3 3 3 0 3 3 2 3 0 1 1
输出#2
5
输入#3
3 4 1000000000000000000 1 3 3 3 0 3 3 2 3 0 1 1
输出#3
0
说明/提示
样例解释
样例 1 中的三条路径:
- (1,1)→(2,1)→(3,1)→(3,2)→(3,3)
- (1,1)→(2,1)→(2,2)→(2,3)→(3,3)
- (1,1)→(1,2)→(2,2)→(3,2)→(3,3)
样例 3 中 k 非常大,没有路径的异或和能达到,答案为 0。
数据范围
对于 100% 的数据,1≤n,m≤20,0≤k≤1018,0≤ai,j≤1018。