P15350 [COCI 2025/2026 #4] 僵尸启示录 / Zombie Apocalypse
题目描述
有 $m$ 个僵尸要攻城。
僵尸从离城市 $(n+1)$ 米的僵尸窝中依次出发攻城。僵尸的速度为 $1$ 米每秒,沿城市方向;僵尸出窝的间隔为 $1$ 秒。令第一只僵尸出发的时刻为第 $1$ 秒初。
这意味着:
- 第 $1$ 秒末,有离窝 $1$ 米的僵尸;
- 第 $2$ 秒末,有离窝 $1,2$ 米的僵尸;
- 第 $3$ 秒末,有离窝 $1,2,3$ 米的僵尸;
- 以此类推。
僵尸离窝 $(n+1)$ 米时抵达城市。
现在在路上放置 $k$ 个炸弹以保卫城市。我们知道每个炸弹的以下信息:
- 炸弹的位置(即离窝的距离);
- 炸弹的爆炸半径;
- 炸弹放置的时刻。
一个半径为 $r$ 的炸弹,设其在时刻 $t$ 被安装在 $x$ 处。这个炸弹会炸死某个在 $y$ 处的僵尸,当且仅当在时刻 $t$ 有 $|x-y|\le r$ 成立。已经抵达城市的僵尸不会被炸死。僵尸被炸死后不能继续移动。
炸弹可以在任意时刻、位置、时间被安装;特别地,同一时刻(和/或)同一位置可能存在多个炸弹。
求出抵达城市的僵尸数量。
输入格式
第一行,三个正整数 $n,m,k$($1\le n,m,k\le 200$)。
接下来 $k$ 行,每行三个整数 $x,r,t$($1\le x\le n$,$0\le r\le n$,$1\le t\le 500$),描述一个炸弹,其中:
- 炸弹安装在离窝 $x$ 米处;
- 炸弹的爆炸半径为 $r$ 米;
- 炸弹的安装时刻为 $t$ 秒末。
输出格式
输出一行一个整数:抵达城市的僵尸数量。
说明/提示
### 样例解释
样例一解释如下表。
| 时刻(第 $i$ 秒末) | 僵尸窝内 | 通往城市的路上 | 城市内 |
| :-: | :-: | :-: | :-: |
| 初始状态 | $\{z, z, z\}$ | $(0, 0, 0, 0, 0, 0)$ | $\{\}$ |
| $1$ | $\{z, z\}$ | $(z, 0, 0, 0, 0, 0)$ | $\{\}$ |
| $2$ | $\{z\}$ | $(z, z, 0, 0, 0, 0)$ | $\{\}$ |
| $2$ | $\{z\}$ | $(z, \underline{z, \mathbf{0}, 0}, 0, 0)$ | $\{\}$ |
| $2$ | $\{z\}$ | $(z, 0, 0, 0, 0, 0)$ | $\{\}$ |
| $3$ | $\{\}$ | $(z, z, 0, 0, 0, 0)$ | $\{\}$ |
| $4$ | $\{\}$ | $(0, z, z, 0, 0, 0)$ | $\{\}$ |
| $5$ | $\{\}$ | $(0, 0, z, z, 0, 0)$ | $\{\}$ |
| $6$ | $\{\}$ | $(0, 0, 0, z, z, 0)$ | $\{\}$ |
| $7$ | $\{\}$ | $(0, 0, 0, 0, z, z)$ | $\{\}$ |
| $7$ | $\{\}$ | $(0, 0, 0, 0, \underline{\bf z}, z)$ | $\{\}$ |
| $7$ | $\{\}$ | $(0, 0, 0, 0, 0, z)$ | $\{\}$ |
| $8$ | $\{\}$ | $(0, 0, 0, 0, 0, 0)$ | $\{z\}$ |
| $8$ | $\{\}$ | $(\underline{0, 0, 0, \mathbf{0}, 0, 0})$ | $\{z\}$ |
| $8$ | $\{\}$ | $(0, 0, 0, 0, 0, 0)$ | $\{z\}$ |
### 子任务
| 子任务编号 | 满分 | 限制 |
| :-: | :-: | :-: |
| $1$ | $ 13 $ | $m=1$ |
| $2$ | $ 27 $ | $k=1$ |
| $3$ | $ 30 $ | 无额外约束 |