#AT1953. E - Integers on Grid

E - Integers on Grid

E - 网络整数

分数:500

问题描述

我们有一个有 $H$ 行和 $W$ 列的网格。记 $(i, j)$ 为从上往下第 $i$ 行、从左往右第 $j$ 列的方格。

每个方格中都包含一个整数。对于每个 $i = 1, 2, \ldots, N$,方格 $(r_i, c_i)$ 包含一个正整数 $a_i$。其他方格包含 $0$。

初始情况下,一个棋子位于方格 $(R, C)$。

高枝可以任意多次地将这个棋子移动到不与它现在所在的方格相同的方格上。 然而,在移动这个棋子时,必须满足以下两个条件。

  • 移动到的方格上的整数严格大于移动前的方格上的整数。
  • 移动前和移动后的方格是同一行或同一列上的。

对于每个 $i = 1, 2, \ldots, N$,当 $(R, C) = (r_i, c_i)$ 时,输出高枝可以将这个棋子移动的最大次数。

约束

  • $2 \leq H, W \leq 2 \times 10^5$
  • $1 \leq N \leq \min(2 \times 10^5, HW)$
  • $1 \leq r_i \leq H$
  • $1 \leq c_i \leq W$
  • $1 \leq a_i \leq 10^9$
  • $i \neq j \Rightarrow (r_i, c_i) \neq (r_j, c_j)$
  • 输入中的所有值都为整数。

输入

从标准输入读入数据,数据格式如下:

H W N
r_1 c_1 a_1
r_2 c_2 a_2
$\vdots$
r_N c_N a_N

输出

输出 $N$ 行。

对于每个 $i = 1, 2, \ldots, N$,第 $i$ 行输出高枝可以将这个棋子移动的最大次数。


3 3 7
1 1 4
1 2 7
2 1 3
2 3 5
3 1 2
3 2 5
3 3 5
1
0
2
0
3
1
0

网格中包含以下整数:

4 7 0
3 0 5
2 5 5
  • 当 $(R, C) = (r_1, c_1) = (1, 1)$ 时,你可以通过将棋子移动为 $(1, 1) \rightarrow (1, 2)$ 来移动一次。
  • 当 $(R, C) = (r_2, c_2) = (1, 2)$ 时,无法移动棋子。
  • 当 $(R, C) = (r_3, c_3) = (2, 1)$ 时,你可以通过将棋子移动为 $(2, 1) \rightarrow (1, 1) \rightarrow (1, 2)$ 来移动两次。
  • 当 $(R, C) = (r_4, c_4) = (2, 3)$ 时,无法移动棋子。
  • 当 $(R, C) = (r_5, c_5) = (3, 1)$ 时,你可以通过将棋子移动为 $(3, 1) \rightarrow (2, 1) \rightarrow (1, 1) \rightarrow (1, 2)$ 来移动三次。
  • 当 $(R, C) = (r_6, c_6) = (3, 2)$ 时,你可以通过将棋子移动为 $(3, 2) \rightarrow (1, 2)$ 来移动一次。
  • 当 $(R, C) = (r_7, c_7) = (3, 3)$ 时,无法移动棋子。

5 7 20
2 7 8
2 6 4
4 1 9
1 5 4
2 2 7
5 5 2
1 7 2
4 6 6
1 4 1
2 1 10
5 6 9
5 3 3
3 7 9
3 6 3
4 3 4
3 3 10
4 2 1
3 5 4
1 2 6
4 7 9
2
4
1
5
3
6
6
2
7
0
0
4
1
5
3
0
5
2
4
0