#P1035. [Atcoder ABC 476 F] Chebyshev Cafe

    ID: 37 Type: Default 3000ms 2048MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>AtCoderABC476二维前缀和差分坐标变换数学

[Atcoder ABC 476 F] Chebyshev Cafe

题目描述

有一个由 NNNN 列的方格组成的城市街区。我们将从上往下数第 ii 行、从左往右数第 jj 列的格子记为格子 (i,j)(i, j)。每个格子内恰好有一家咖啡馆。

你正在筹划一次大型聚会。在所有参与者中,居住在格子 (i,j)(i, j) 的人数为 (Ai×Bj)modM(A_i \times B_j) \bmod M

一名居住在格子 (sr,sc)(s_r, s_c) 的参与者前往位于格子 (tr,tc)(t_r, t_c) 的咖啡馆时,所花费的交通费用为切比雪夫距离:

max(srtr,sctc)\max(|s_r - t_r|, |s_c - t_c|)

f(i,j)f(i, j) 表示将所有参与者全部召集到位于格子 (i,j)(i, j) 的咖啡馆时所需的交通费总和。

请计算所有格子 (i,j)(i, j)1i,jN1 \le i, j \le N)的以下数值的按位异或和(bitwise XOR sum)

f(i,j)+(i1)N+(j1)f(i, j) + (i - 1)N + (j - 1)

输入格式

输入从标准输入中给出,格式如下:

NN MM
A1A_1 A2A_2 \ldots ANA_N
B1B_1 B2B_2 \ldots BNB_N

输出格式

输出一个整数,表示所有格子的计算结果的按位异或和。

数据范围

  • 1N15001 \le N \le 1500
  • 2M2×1062 \le M \le 2 \times 10^6
  • 1AiM11 \le A_i \le M - 1 (1iN1 \le i \le N)
  • 1BjM11 \le B_j \le M - 1 (1jN1 \le j \le N)
  • 所有输入的值均为整数。

样例

样例输入 1

4 19
2 3 1 1
3 4 4 10

样例输出 1

467

样例解释 1: 每个格子的居民人数为:

$$\begin{bmatrix} 6 & 8 & 8 & 1 \\ 9 & 12 & 12 & 11 \\ 3 & 4 & 4 & 10 \\ 3 & 4 & 4 & 10 \end{bmatrix}$$

每个格子计算出的 f(i,j)f(i, j) 如下:

$$\begin{bmatrix} 220 & 176 & 179 & 224 \\ 199 & 140 & 136 & 182 \\ 212 & 159 & 143 & 178 \\ 255 & 215 & 201 & 218 \end{bmatrix}$$

对所有格子将 f(i,j)+(i1)N+(j1)f(i, j) + (i-1)N + (j-1) 进行异或后,最终答案为 467467

样例输入 2

1 100
5
12

样例输出 2

0

样例输入 3

6 37
12 5 29 1 18 31
22 17 8 14 36 3

样例输出 3

1566