AT_agc068_e [AGC068E] Sort and Match

题目描述

给定一个大小为 $N \times N$ 的整数矩阵 $A = (A_{i,j})_{1 \leq i, j \leq N}$ 和一个整数 $M$。 对于长度为 $M$ 的整数序列 $x = (x_1, x_2, \cdots, x_M)$,其中每个元素均为 $1$ 到 $N$ 之间的整数,我们定义一个函数 $f(x)$: - 首先将序列 $x$ 中的元素按照非严格递增顺序排列,得到新序列 $y = (y_1, y_2, \cdots, y_M)$。 - 计算 $f(x) = \prod_{1 \leq i \leq M} A_{x_i, y_i}$。 请对每一个 $k = 1, 2, \cdots, N$ 计算以下问题: - 对所有满足 $x_1 = k$ 的序列 $x$,计算它们对应的 $f(x)$ 的总和,并将结果对 $998244353$ 取模。

输入格式

输入包含以下内容,从标准输入读取: > 第一行为两个整数,$N$ 和 $M$。 > 接下来为一个 $N \times N$ 的矩阵,按行优先顺序给出: > $A_{1,1}$ $A_{1,2}$ $\cdots$ $A_{1,N}$ > $A_{2,1}$ $A_{2,2}$ $\cdots$ $A_{2,N}$ > $\vdots$ > $A_{N,1}$ $A_{N,2}$ $\cdots$ $A_{N,N}$

输出格式

按顺序输出每个 $k = 1, 2, \cdots, N$ 的答案。

说明/提示

### 约束条件 - $1 \leq N \leq 50$ - $1 \leq M \leq 50$ - $0 \leq A_{i,j} < 998244353$ - 所有输入数据都是整数 ### 示例说明 对于所有可能的序列 $x$ 及其 $f(x)$ 值如下: - 对于 $x = (1, 1)$,产生排序后序列 $y = (1, 1)$,因此 $f(x) = A_{1,1} \times A_{1,1} = 1$。 - 对于 $x = (1, 2)$,产生排序后序列 $y = (1, 2)$,因此 $f(x) = A_{1,1} \times A_{2,2} = 4$。 - 对于 $x = (2, 1)$,产生排序后序列 $y = (1, 2)$,因此 $f(x) = A_{2,1} \times A_{1,2} = 6$。 - 对于 $x = (2, 2)$,产生排序后序列 $y = (2, 2)$,因此 $f(x) = A_{2,2} \times A_{2,2} = 16$。 所以,当 $k = 1$ 时,答案是 $1 + 4 = 5$,当 $k = 2$ 时,答案是 $6 + 16 = 22$。 **本翻译由 AI 自动生成**