已结束 GESP排位赛#12

A3171 | 花火大会

来源官方 / 2024
时间限制2s
内存限制512MB
通过 / 提交0/0

题目描述

时间限制:2000ms

内存限制:512MB


*如夜空中绽放的花火,带走所有的忧愁与不快,任它们随风消散,只留下星辰般的宁静与温柔。*




2024年8月24日,江户川区一年一度的「花火大会」如期举行。这次大会分布在江户川区的多个地点,同时在多个烟火发射点燃放烟花。每处烟花的燃放时间不一,烟花一旦点燃,便会向四周扩散,映照整片夜空。「花火大会」结束后,负责区域安全监测的你需要为主办方提供一份详细报告,报告中包括在江户川区每个地点看到烟花的最早时间。

给定一个 $N \times M$ 的地图,地图上的每个格子代表江户川区的一个区域。共有 $K$ 个地点布置了烟花,每个烟花 $i$ 的位置为 $(X_i, Y_i)$,并在 $Z_i$ 时燃放。每秒钟,烟花会沿上下左右四个方向无限散开(假设没有建筑物阻挡视线)。你的任务是计算在地图上每个区域看到烟花的最早时间。
由于这个输出可能会很大,所以我们采取以下方式输出答案。

令 $\tt{T_{i, j}}$ 表示 $(i, j)$ 处看到烟花的最早时间,输出答案为:

$$ \tt{\sum_{i=1}^{N}\sum_{j=1}^{M} T_{i, j} \times 233^{i \times M + j} \mod{998244353}} $$

$\large{数据范围}$

- $1 \le N, M \le 5 \times 10^3$
- $1 \le K \le \min{\{1000, N \times M \}}$
- $1 \le X_i \le N$
- $1 \le Y_i \le M$
- $1 \le Z_i \le 10^9$
- $K$ 处地点互不相同。

输入格式

对于每个测试文件格式如下:

$\tt{N\ M\ K}$

$\tt{X_1\ Y_1\ Z_1}$

$\tt{X_2\ Y_2\ Z_2}$

$\tt{\vdots}$

$\tt{X_K\ Y_K\ Z_K}$

输出格式

对于每个测试文件,按照题目要求输出答案。

输入输出样例

输入 #1
3 3 1
2 2 1
输出 #1
793286413
输入 #2
9 9 3
2 6 1
6 3 2
8 8 5
输出 #2
61231456
输入 #3
10 10 9
4 6 5
7 6 4
7 10 8
10 1 5
6 5 6
2 3 5
10 8 9
2 9 3
4 4 1
输出 #3
463253383
输入 #4
90 98 9
36 42 7
69 59 3
29 1 1
34 6 18
31 73 8
67 86 16
1 20 20
11 78 5
44 14 17
输出 #4
72268164
C++ 编辑器
输入
输出