题目描述
有一个 H 行 W 列的网格,其中有 M 个目标。第 i 个目标位于第 ri 行第 ci 列。
你可以选择一行 R 和一列 C,引爆一次炸弹。炸弹会摧毁所有满足“行号为 R 或列号为 C”的目标。
如果格子 (R,C) 上本来就有目标,它也只会被计算一次。
请问一次引爆最多可以摧毁多少个目标?
输入格式
第一行包含三个整数 H,W,M。
接下来 M 行,每行包含两个整数 ri,ci,表示一个目标的位置。
保证所有目标位置互不相同。
输出格式
输出一个整数,表示一次引爆最多可以摧毁的目标数量。
2 3 3
2 2
1 1
1 3
3
3 3 4
3 3
3 1
1 1
1 2
3
5 5 10
2 5
4 3
2 3
5 5
2 2
5 4
5 3
5 1
3 5
1 4
6
样例解释说明
对于第一组样例:可以选择第 1 行和第 2 列,这样可以摧毁全部 3 个目标。
其他样例参考下发文件。
数据规模与约定
对于 100% 的数据,满足:
- 1≤H,W≤3×105
- 1≤M≤min(HW,3×105)
- 1≤ri≤H
- 1≤ci≤W
- 所有 (ri,ci) 互不相同
| 测试点编号 |
分值 |
特殊性质 |
| 1∼2 |
10 |
H=1 或 W=1 |
| 3∼5 |
15 |
H,W≤8 |
| 6∼8 |
M≤2000 |
| 9∼11 |
任意两个目标所在行互不相同 |
| 12∼14 |
任意两个目标所在列互不相同 |
| 15∼17 |
H,W≤2000 |
| 18∼20 |
无额外限制 |