C. 路径规划

    Type: Default 2000ms 256MiB

路径规划

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

有一个 nnmm 列的网格。网格里的每个格子都写着一个整数,其中第 ii 行第 jj 列的格子里写着整数 ai,ja_{i,j} 。从 00nm1n * m - 1 的每个整数(含两端)在网格里都恰好出现一次。 令 iji j 表示位于第 ii 行第 jj 列的格子。您现在需要从 (1,1)(1,1) 出发并前往 (n,m)(n,m)。当您位于格子 (i,j)(i,j)时,您可以选择走到右方的格子 (i,j+1)(i,j+1)(若 j<mj \lt m),也可以选择走到下方的格子 (i+1,j)(i+1,j)(若 i<ni \lt n)。 令 SS 表示路径上每个格子里的整数形成的集合,包括a1,1a_{1,1}an,ma_{n,m} 。令 mex(S)mex(S) 表示不属于S的最小非负整数。请找出一条路径以最大化 mex(S)mex(S),并求出这个最大的值。

输入样例

第一行输入两个整数 nnmm1n,m1061n,m1061 \le n,m \le 10^6,1 \le n,m \le 10^6)表示网格的行数和列数。 对于接下来 nn 行,第ii行输入mm个整数ai,1,ai,2,ai,m,0ai,j<n,ma_{i,1}, a_{i,2}, a_{i,m},0 \le a_{i,j} \lt n,m,其中 ai,ja_{i,j} 表示格子 (i,j)(i,j) 里的整数。从 00(nm1)(n*m - 1) 的每个整数(含两端)在网格里都恰好出现一次。

输出样例

输出一行一个整数,表示最大的 mex(S)mex(S)

样例1

输入

2 3
1 2 4
3 0 5

输出

3

样例2

输入

1 5
1 3 0 4 2

输出

5

样例解释

对于第一组样例数据,共有 33 条可能的路径。 -第一条路径为 (1,1)>(1,2)>(1,3)>(2,3)(1,1) -> (1,2) -> (1,3) -> (2,3)S={1,2,4,5}S = \{1,2,4,5\} 因此 mex(S)=0mex(S)=0。 -第二条路径为 (1,1)>(1,2)>(2,2)>(2,3)(1,1) -> (1,2) -> (2,2) -> (2,3)S={1,2,0,5}S= \{1,2,0,5\}因此 mex(S)=3mex(S)=3。 -第三条路径为 (1,1)>(2,1)>(2,2)>(2,3)(1,1) -> (2,1) -> (2,2) -> (2,3)S={1,3,0,5}S= \{1,3,0,5\}因此 mex(S)=2mex(S)=2 。 因此答案为 33

对于第二组样例数据,只有 11 条可能的路径,即 (1,1)>(1,2)>(1,3)>(1,4)>(1,5)(1,1)-> (1,2)-> (1,3)-> (1,4)-> (1,5)S={1,3,0,4,2}S = \{1,3,0,4,2\} 因此 mex(S)=5mex(S) = 5

数据分布

40% 40\% 的样例,1n,m100 1 \le n,m \le 100, nm100 n*m \le 100

100% 100 \% 的样例,1n,m106 1 \le n,m \le 10^6,nm106 n*m \le 10^6

竞赛B班5.31日

Not Attended
Status
Done
Rule
IOI
Problem
3
Start at
2025-5-31 17:30
End at
2025-6-7 17:30
Duration
168 hour(s)
Host
Partic.
6