#abc023c. [abc023_c]収集王

[abc023_c]収集王

问题

高桥准备移动到一个房间。

该房间是一个由 RRCC 列的正方形网格组成的形状。其中第 ii 行第 jj 列的格子称为 (i,j)(i,j) 格子。

这些格子中共有 NN 个糖果。每个糖果都有从 11NN 的编号,糖果 ii1iN1 \leq i \leq N)位于格子 (ri,ci)(r_i,c_i) 上。其中任意两个糖果不在同一个格子上。

高桥会移动到任意一个格子。之后,高桥会按照以下方式获取糖果:

  • 首先,他会获取与他所在格子同行的所有格子上的糖果。
  • 然后,他会获取与他所在格子同列的所有格子上的糖果。

除此之外,高桥不会做其他任何行动。

高桥希望能够获得恰好 KK 个糖果。请计算满足这个条件的移动目标格子的总数。


输入

输入以以下格式从标准输入中给出。

RR CC KK NN r1r_1 c1c_1 r2r_2 c2c_2 : rNr_N cNc_N

  • 第一行包含三个整数 RR1R100,0001 \leq R \leq 100,000)、CC1C100,0001 \leq C \leq 100,000)和 KK1K100,0001 \leq K \leq 100,000),以空格分隔。表示房间由 RRCC 列组成,KK 是高桥希望获得的糖果数量。
  • 第二行包含一个整数 NNKN100,000K \leq N \leq 100,000),表示糖果的数量。
  • 接下来的 NN 行描述糖果的相关信息。其中第 ii 行(1iN1 \leq i \leq N)包含两个整数 rir_i1riR1 \leq r_i \leq R)和 cic_i1ciC1 \leq c_i \leq C),以空格分隔。表示糖果 ii 位于格子 (ri,ci)(r_i,c_i) 上。
  • 对于 iji \neq j,有 (ri,ci)(rj,cj)(r_i,c_i) \neq (r_j,c_j)

部分分

本问题设置了部分分。

  • R50R \leq 50C50C \leq 50N50N \leq 50 的数据集 1 正确时,可获得 30 分。
  • 在无附加约束的数据集 2 正确时,除上述部分外还可额外获得 70 分。

输出

请输出满足糖果数量恰好为 KK 的移动目标格子的总数,以一行输出。输出末尾需换行。


示例输入1

3 5 3
5
1 2
2 1
2 5
3 2
3 5

示例输出1

5

例如,考虑高桥移动到格子 (3,2)(3,2) 的情况。

  • 糖果 1 位于格子 (1,2)(1,2) 上。由于这个格子与高桥所在的格子在同一列上,高桥会获取糖果 1。
  • 糖果 2 位于格子 (2,1)(2,1) 上。由于这个格子既不在高桥所在的行上,也不在同一列上,高桥不会获取糖果 2。
  • 糖果 3 位于格子 (2,5)(2,5) 上。由于这个格子既不在高桥所在的行上,也不在同一列上,高桥不会获取糖果 3。
  • 糖果 4 位于格子 (3,2)(3,2) 上。由于这个格子与高桥所在的格子是同一个格子(即同一行且同一列),高桥会获取糖果 4。
  • 糖果 5 位于格子 (3,5)(3,5) 上。由于这个格子与高桥所在的格子在同一行上,高桥会获取糖果 5。

因此,高桥会恰好获取糖果 1、4 和 5,总共 3 个。所以格子 (3,2)(3,2) 是一个满足糖果数量恰好为 KK 的移动目标格子。

其他满足条件的格子包括 (1,5)(1,5)(2,5)(2,5)(3,1)(3,1)(3,5)(3,5),所以输出为 5。


示例输入2

7 3 1
4
3 2
3 3
4 2
4 3

示例输出2

0

无论如何移动,都无法恰好获取 1 个糖果。


示例输入3

5 5 2
5
1 1
2 2
3 3
4 4
5 5

示例输出3

20