#1158. 矩阵异或和(xor)
矩阵异或和(xor)
题目描述
给定一个 的非负整数方阵 和一个 的非负整数方阵 ,其中 。
将方阵 在方阵 上滑动,每次滑动覆盖 的一个 子方阵。对于每个滑动位置,将 中每个元素与 中对应位置的元素进行异或,然后将所有异或结果相加。
形式化地,你需要计算:
$$\sum_{i=1}^{n-m+1}\sum_{j=1}^{n-m+1}\sum_{k=1}^{m}\sum_{l=1}^{m} (a_{i+k-1,j+l-1} \oplus b_{k,l})$$其中 表示按位异或运算。异或运算的规则为:对于两个非负整数 和 ,将它们分别转换为二进制后逐位比较,若某一位上的数值不同则结果该位为 ,否则为 。例如 ,因为 。
最终结果对 取模后输出。
输入格式
第一行包含两个整数 。
接下来 行,每行 个整数,表示方阵 。
接下来 行,每行 个整数,表示方阵 。
输出格式
输出一行一个整数,表示答案。
样例输入 1
3 1
1 2 3
4 5 6
7 8 9
1
样例输出 1
44
样例输入 2
5 3
1 2 3 4 5
6 7 8 9 9
6 6 6 6 6
7 7 7 7 7
1 1 2 3 3
1 2 3
1 2 3
1 2 3
样例输出 2
425
说明
样例解释
对于样例 1,此时 , 中只有一个元素 。答案为 中所有元素与 异或后的总和:
$$(1 \oplus 1) + (2 \oplus 1) + \dots + (9 \oplus 1) = 44$$其它样例说明
- 样例 3:见选手目录下的
xor/xor3.in与xor/xor3.ans,该测试用例满足测试点 的约束条件。 - 样例 4:见选手目录下的
xor/xor4.in与xor/xor4.ans,该测试用例满足测试点 的约束条件。 - 样例 5:见选手目录下的
xor/xor5.in与xor/xor5.ans,该测试用例满足测试点 的约束条件。 - 样例 6:见选手目录下的
xor/xor6.in与xor/xor6.ans,该测试用例满足测试点 的约束条件。
数据范围
对于 的数据,满足以下约束条件:
各测试点的附加限制如下表所示:
| 测试点编号 | 特殊性质 | ||
|---|---|---|---|
| 无 | |||
| 无 | |||
相关
在下列比赛中: