#PFXD11. 撤掉遮阳布

撤掉遮阳布

题目描述

一个 RR 行 CC 列的广场上架起了 mm 块矩形遮阳布。每块布遮住一个包含边界的格子矩形,不同布可以部分重叠,也可以完全重合。

只要一个格子被至少一块布遮住,就称该格子受到遮挡。现在必须从这 mm 块布中撤掉恰好一块,其余布的位置不变。

请问撤掉之后,最多还能有多少个格子受到遮挡?

输入格式

第一行三个整数 R,C,mR,C,m。

接下来 mm 行,每行四个整数 x1,y1,x2,y2x_1,y_1,x_2,y_2,表示一块布遮住从第 x1x_1 行到第 x2x_2 行、从第 y1y_1 列到第 y2y_2 列的所有格子,包含边界。

输出格式

输出一个整数,表示撤掉恰好一块布后,仍受到遮挡的最大格子数。

3 4 3
1 1 3 2
1 2 2 4
3 3 3 4
10
2 2 2
1 1 2 2
1 1 2 2
4

样例 1 解释

原来十二个格子都受到遮挡。撤掉第三块布只会使第 33 行第 3,43,4 列失去遮挡,剩余十格;撤掉前两块中的任何一块都会损失四格。

样例 2 解释

两块布完全重合,撤掉任何一块后,四个格子仍受到另一块布遮挡。

数据范围与提示

对于所有测试点:1≤R,C≤10001\le R,C\le1000,1≤m≤2000001\le m\le200000。

所有布满足 1≤x1≤x2≤R1\le x_1\le x_2\le R,1≤y1≤y2≤C1\le y_1\le y_2\le C。

共 2020 个测试点,每个测试点 55 分,独立计分。以下限制均在完整数据范围的基础上额外成立;未列出的参数仍遵守完整数据范围。

测试点编号 额外规模限制
1—5 R,C≤6R,C\le6,m≤30m\le30
6—10 R,C≤50R,C\le50,m≤2000m\le2000
11—20 无额外限制

时间限制:2 秒。内存限制:128 MiB。