CF2122E.Greedy Grid Counting

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

网格中的路径若满足以下条件则称为贪心路径:从左上角单元格出发,仅能向右或向下移动,且每次必须移动到相邻数值更大的单元格(若相邻值相等则可任选其一)。

路径的数值等于其经过所有单元格(包括起点和终点)的数值之和。

给定一个部分填充的 2×n2 \times n 整数网格(数值范围 11 至 kk),计算填充空白单元格的方案数,使得每个子网格∗^{\text{∗}}中都存在一条贪心路径,其数值等于该子网格所有下/右路径中的最大值。由于答案可能很大,请对 998 244 353998\,244\,353 取模。

∗^{\text{∗}} 对于 2×n2 \times n 网格 ai,ja_{i,j},其子网格由满足 1≤lx≤rx≤21 \leq l_x \leq r_x \leq 2 和 1≤ly≤ry≤n1 \leq l_y \leq r_y \leq n 的所有单元格 ax,ya_{x,y}(其中 lx≤x≤rxl_x \leq x \leq r_x,ly≤y≤ryl_y \leq y \leq r_y)构成。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤5001 \le t \le 500)。接下来是每个测试用例的描述。

每个测试用例的第一行包含两个整数 nn 和 kk(1≤n,k≤5001 \leq n, k \leq 500)—— 分别表示网格的列数和网格中整数的取值范围。

随后是两行,第 ii 行包含 nn 个整数 ai,1,ai,2,…,ai,na_{i,1}, a_{i,2}, \ldots, a_{i,n}(−1≤ai,j≤k-1 \leq a_{i,j} \leq k,ai,j≠0a_{i,j} \neq 0)—— 表示网格第 ii 行单元格的值,其中 −1-1 表示空单元格。

保证所有测试用例的 nn 之和不超过 500500。

输出格式

对于每个测试用例,输出一个整数——满足上述条件的网格填充方案数,对 998 244 353998\,244\,353 取模。

输入输出样例

  • 输入#1

    3
    4 3
    2 1 -1 2
    2 -1 1 3
    5 4
    1 3 -1 4 2
    -1 3 4 2 -1
    10 10
    -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
    -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

    输出#1

    6
    64
    123782927

说明/提示

在第一个测试用例中,满足条件的网格如下:

[21122113], [21122213], [21122313], [21222213], [21222313], [21322313].\begin{bmatrix} 2 & 1 & 1 & 2 \\ 2 & 1 & 1 & 3 \end{bmatrix},\: \begin{bmatrix} 2 & 1 & 1 & 2 \\ 2 & 2 & 1 & 3 \end{bmatrix},\: \begin{bmatrix} 2 & 1 & 1 & 2 \\ 2 & 3 & 1 & 3 \end{bmatrix},\: \begin{bmatrix} 2 & 1 & 2 & 2 \\ 2 & 2 & 1 & 3 \end{bmatrix},\: \begin{bmatrix} 2 & 1 & 2 & 2 \\ 2 & 3 & 1 & 3 \end{bmatrix},\: \begin{bmatrix} 2 & 1 & 3 & 2 \\ 2 & 3 & 1 & 3 \end{bmatrix}.

在第二个测试用例中,所有填充网格的方式均满足条件。

输入解题思路,AI测评打分。不知道怎么写?

首页