AT_pakencamp_2024_day1_p Bombard

题目描述

有一个高 $H$ 行、宽 $W$ 列的网格。我们将左上角的格子记作 $(1, 1)$,从上往下的第 $x$ 行、从左往右的第 $y$ 列的格子记作 $(x, y)$。 在这个网格上,建立了 $N$ 个矩形结构物。第 $i$ 个结构物覆盖所有满足 $U_i \leq x \leq D_i,\;L_i \leq y \leq R_i$ 的格子 $(x, y)$,并且不覆盖其他格子。保证每一个格子至多被一个结构物覆盖。每个结构物都有一个值 $C_i$。 每个格子的价值定义为覆盖它的结构物的值。如果没有结构物覆盖该格子,则该格子的价值为 $0$。 Falcon 君持有一门波动炮,可以从某个位置向右摧毁所有的格子。具体来说,如果在格子 $(x, y)$ 发射波动炮,则对于所有满足 $y \leq j \leq W$ 的整数 $j$,格子 $(x, j)$ 都会被摧毁。 这时,Falcon 君的“开心值”即为被摧毁的所有格子的价值之和。 波动炮可以在上下方向随意移动,但不能左右移动。现在给定 $Q$ 个需要考虑的候选发射列,对于第 $K_i$ 列,请求出 Falcon 君的最大“开心值”。

输入格式

输入通过标准输入以以下格式给出。 > $N\ H\ W$ > $U_1\ D_1\ L_1\ R_1\ C_1$ > $U_2\ D_2\ L_2\ R_2\ C_2$ > $\vdots$ > $U_N\ D_N\ L_N\ R_N\ C_N$ > $Q$ > $K_1$ > $K_2$ > $\vdots$ > $K_Q$

输出格式

请输出答案。

说明/提示

### 样例解释 1 网格如下图所示。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_pakencamp_2024_day1_p/623f448c0131f085a24924fcf8ab3e8c7a1507fa3fdd85153caed12336d7b02c.png) 例如,从第 $1$ 列发射时: - 放在第 $1$ 行时,开心值为 $36$; - 放在第 $2$ 行时,开心值为 $30$; - 放在第 $3$ 行时,开心值为 $30$; - 放在第 $4$ 行时,开心值为 $38$; - 放在第 $5$ 行时,开心值为 $14$; - 放在第 $6$ 行时,开心值为 $8$。 因此,需要输出 $38$。 ### 数据范围 - $1 \leq N \leq 10^5$ - $1 \leq H,W \leq 10^9$ - $1 \leq U_i \leq D_i \leq H$($1 \leq i \leq N$) - $1 \leq L_i \leq R_i \leq W$($1 \leq i \leq N$) - 不存在两个结构物覆盖同一格子 - $1 \leq C_i \leq 10^9$($1 \leq i \leq N$) - $1 \leq Q \leq 2 \times 10^5$ - $1 \leq K_i \leq W$($1 \leq i \leq Q$) - 所有输入均为整数。 由 ChatGPT 5 翻译