AT_abc402_f [ABC402F] Path to Integer
题目描述
[problemUrl]: https://atcoder.jp/contests/abc402/tasks/abc402_f
有一个 $N$ 行 $N$ 列的网格。从上往下第 $i$ 行、从左往右第 $j$ 列的格子记作格子 $(i,j)$。每个格子上都写有 `1` 到 `9` 的数字,格子 $(i,j)$ 上写的数字是 $A_{i,j}$。
初始时,棋子位于格子 $(1,1)$。同时,设 $S$ 为空字符串,接下来进行 $2N-1$ 次操作:
1. 将当前棋子所在格子的数字追加到 $S$ 的末尾。
2. 将棋子向右或向下移动一格(第 $2N-1$ 次操作时不移动)。
$2N-1$ 次操作后,棋子将位于格子 $(N,N)$,且 $S$ 的长度为 $2N-1$。
将最终得到的字符串 $S$ 视为整数,其值对 $M$ 取模的结果即为得分。
请计算可以获得的最高得分。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $M$
> $A_{1,1}$ $A_{1,2}$ $\ldots$ $A_{1,N}$
> $A_{2,1}$ $A_{2,2}$ $\ldots$ $A_{2,N}$
> $\vdots$
> $A_{N,1}$ $A_{N,2}$ $\ldots$ $A_{N,N}$
输出格式
输出答案。
说明/提示
### 约束条件
- $1 \leq N \leq 20$
- $2 \leq M \leq 10^9$
- $1 \leq A_{i,j} \leq 9$
- 输入中的所有数值均为整数
### 样例解释 1
棋子的移动方式有以下两种:
1. 按 $(1,1)\rightarrow(1,2)\rightarrow(2,2)$ 的顺序移动。此时 $S=$ `121`,得分为 $121 \bmod 7 = 2$。
2. 按 $(1,1)\rightarrow(2,1)\rightarrow(2,2)$ 的顺序移动。此时 $S=$ `131`,得分为 $131 \bmod 7 = 5$。
最高得分为 5,因此输出 5。
翻译由 DeepSeek V3 完成