#P16904. [Ontak2026]海报
[Ontak2026]海报
题目描述
在“神秘知识守护者”的秘密基地中有一面墙,墙上贴着 张矩形海报。这些海报的内部两两不相交。
现在有 个新的矩形摆放方案。对于每个查询矩形,需要计算它被现有海报覆盖的面积。
形式化地说:
- 平面上给定 个内部互不相交的灰色轴对齐矩形;
- 每次询问给定另一个轴对齐矩形;
- 求询问矩形内部灰色部分的总面积,也就是它与所有已有海报的交面积之和。
由于已有海报内部互不相交,这些交面积之间不会发生重复计数。
部分子任务要求在线回答:后一条询问的真实坐标会依赖前一条询问的答案。
输入格式
第一行包含五个整数 :
- ;
- 。
其中:
- :墙的高度;
- :墙的宽度;
- :已有海报数量;
- :询问数量;
- :用于编码查询的模数常数。
接下来 行,每行包含四个整数 ,表示一张已有海报的两个对角顶点:
- ;
- 。
所有已有海报的内部两两不相交。
接下来 行,每行包含五个整数 ,每个数都位于 。它们是编码后的查询参数。
设上一条询问的答案为 ;对于第一条询问规定 。真实坐标按下式得到:
,
,其中 。
保证解码后的坐标满足:
- ;
- 。
两个给定点是矩形的一对对角顶点,坐标不要求按大小顺序给出。
在标记为 offline 的子任务中,总有 ,即查询完全不加密。
输出格式
对于每个查询,输出一行一个整数,表示查询矩形与所有已有海报的公共面积总和。
样例 1:离线查询
8 11 3 4 13
1 1 5 5
7 7 5 4
4 6 2 7
1 1 7 8 0
2 2 4 3 0
3 4 6 7 0
2 9 3 10 0
24
2
6
0
样例 2:在线查询
8 11 3 4 13
1 1 5 5
7 7 5 4
4 6 2 7
1 1 7 8 4
6 6 8 7 2
2 3 5 6 7
11 5 12 6 5
24
2
6
0
第二个样例描述的是与第一个样例完全相同的真实查询,只是查询坐标使用了在线编码。
子任务
| 子任务 | 类型 | 分值 | |||
|---|---|---|---|---|---|
| 1 | 500 | offline | 10 | ||
| 2 | 5000 | ||||
| 3 | 300000 | 50000 | 40 | ||
| 4 | 200000 | 14 | |||
| 5 | 6 | ||||
| 6 | 100002 | online | 14 | ||
| 7 | 6 | ||||
相关
在下列比赛中: