A29348.花火大会
普及/提高-
通过率:0%
时间限制:2.00s
内存限制:512MB
题目描述
时间限制:2000ms
内存限制:512MB
如夜空中绽放的花火,带走所有的忧愁与不快,任它们随风消散,只留下星辰般的宁静与温柔。
2024年8月24日,江户川区一年一度的「花火大会」如期举行。这次大会分布在江户川区的多个地点,同时在多个烟火发射点燃放烟花。每处烟花的燃放时间不一,烟花一旦点燃,便会向四周扩散,映照整片夜空。「花火大会」结束后,负责区域安全监测的你需要为主办方提供一份详细报告,报告中包括在江户川区每个地点看到烟花的最早时间。
给定一个 N×M 的地图,地图上的每个格子代表江户川区的一个区域。共有 K 个地点布置了烟花,每个烟花 i 的位置为 (Xi,Yi),并在 Zi 时燃放。每秒钟,烟花会沿上下左右四个方向无限散开(假设没有建筑物阻挡视线)。你的任务是计算在地图上每个区域看到烟花的最早时间。
由于这个输出可能会很大,所以我们采取以下方式输出答案。
令 Ti,j 表示 (i,j) 处看到烟花的最早时间,输出答案为:
i=1∑Nj=1∑MTi,j×233i×M+jmod998244353
数据范围
- 1≤N,M≤5×103
- 1≤K≤min{1000,N×M}
- 1≤Xi≤N
- 1≤Yi≤M
- 1≤Zi≤109
- K 处地点互不相同。
输入格式
对于每个测试文件格式如下:
N M K
X1 Y1 Z1
X2 Y2 Z2
⋮
XK YK ZK
输出格式
对于每个测试文件,按照题目要求输出答案。
输入输出样例
输入#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
说明/提示
样例 1:
在 (1,1) 处烟花在时间为 1 时燃放,得出每个位置看到烟花的时间为:
3 2 3
2 1 2
3 2 3
按照题目给出的方式计算答案应为 793286413。
样例 2:
在 (2,6) 处烟花在时间为 1 时燃放;
在 (6,3) 处烟花在时间为 2 时燃放;
在 (8,8) 处烟花在时间为 5 时燃放;
得出每个位置看到烟花的时间为:
7 6 5 4 3 2 3 4 5
6 5 4 3 2 1 2 3 4
7 6 5 4 3 2 3 4 5
6 5 4 5 4 3 4 5 6
5 4 3 4 5 4 5 6 7
4 3 2 3 4 5 6 7 8
5 4 3 4 5 6 7 6 7
6 5 4 5 6 7 6 5 6
7 6 5 6 7 8 7 6 7
按照题目给出的方式计算答案应为 61231456。