luogu#P11099. [ROI 2022 Day 1] 照明

[ROI 2022 Day 1] 照明

题目背景

翻译自 ROI 2022 D1T4

在平面直角坐标系上有一个矩形区域,它的四个角分别在 (0,0),(w,0),(w,h),(0,h)(0, 0), (w, 0), (w, h) , (0, h)。该区域上有 nn 个照明灯,第 ii 个照明灯位于坐标点 (xi,yi)(x_i, y_i)

每个照明灯照亮一个 9090 度的角,这个角的边与坐标轴平行,顶点为照明灯所在位置。因此,每个照明灯有四个可能的照亮方向:

题目描述

给定一个允许的角度方向的集合(对于所有照明灯都相同)。对于每个照明灯,选择其中一个允许的方向。需要照亮尽可能大的区域。如果一个点至少被一个照明灯照到,则认为该点被照亮。

计算使用照明灯可以照亮的区域的最大可能面积,其中每个照明灯都向其中一个允许的方向上照。

输入格式

每个测试点包含多组数据。

第一行给出一个整数 k(1k4)k (1 \le k \le 4),表示每组数据中允许的角度方向的数量。

第二行给出 kk 个整数,表示允许的方向编号(如当灯光允许向右上或左下照时,输入为 1 3)。所有 kk 个数字是不同的,并按升序排列。

第三行给出一个整数 t(1t10000)t (1 \le t \le 10000),表示数据的组数。接下来输入 tt 组数据。

每个数据集的第一行给出三个整数 n,w,h(1n100000,1w,h109)n,w,h (1 \le n \le 100000, 1 \le w, h \le 10^9),表示区域上的照明灯数量和区域的大小。

接下来的 nn 行,每行两个整数 xi,yi(0xiw,0yih)x_i,y_i (0 \le x_i \le w, 0 \le y_i \le h),表示第 ii 个照明灯的坐标。保证任意两个照明灯不在同一点上。

输出格式

对于每组数据,输出一个整数,表示可以使用照明灯照亮的区域的最大可能面积。

1
1
1
4 6 4
3 3
1 2
4 1
5 0
13
2
1 2
1
4 9 7
3 0
0 5
4 4
1 2
55
2
1 3
1
5 6 11
4 2
2 7
1 10
3 8
5 4
57
3
1 2 3
1
5 7 10
1 9
5 5
3 4
2 6
4 3
63
4
1 2 3 4
1
3 8 6
2 2
4 5
6 1
44

提示

样例解释:

样例 11

样例 22

样例 33

样例 44

样例 55

数据范围:

全部数据范围见输入格式。

Subtask 分值 n\sum n\le 允许的方向
11 1313 10510^5 11
22 1111 50005000 1,21,2
33 1414 10510^5
44 2222 50005000 1,31,3
55 1414 10510^5
66 1515 20002000 1,2,31,2,3
77 1111 10510^5 1,2,3,41,2,3,4