数组二维转一维存储
当题目中的数据范围是 \(n \times m\leq 10^6\) 时,就不能直接开 \(N\times M\) 的数组。考虑将二维坐标转为一维:
\[
x=i*m+j
\]
其中 \(1\leq i\leq n\),\(1\leq j\leq m\) 注意:不能用n代替m,必须是j的最大取值范围;i 不要减1,否则访问 f(i - 1, j) 时会访问到负数下标。
\[ 100pts\rightarrow 50pts \]
当题目中的数据范围是 \(n \times m\leq 10^6\) 时,就不能直接开 \(N\times M\) 的数组。考虑将二维坐标转为一维:
其中 \(1\leq i\leq n\),\(1\leq j\leq m\) 注意:不能用n代替m,必须是j的最大取值范围;i 不要减1,否则访问 f(i - 1, j) 时会访问到负数下标。