CF1366C Palindromic Paths
题目描述
给定一个有 $n$ 行(编号从 $1$ 到 $n$)和 $m$ 列(编号从 $1$ 到 $m$)的矩阵。每个单元格 $(i, j)$ 中写有一个数字 $a_{i, j}$,每个数字要么是 $0$,要么是 $1$。
有一个芯片最初位于单元格 $(1, 1)$,它将被移动到单元格 $(n, m)$。每次移动时,芯片可以移动到当前行的下一个单元格,或者当前列的下一个单元格(如果当前单元格是 $(x, y)$,那么移动后可以到 $(x + 1, y)$ 或 $(x, y + 1)$)。芯片不能离开矩阵。
考虑芯片从 $(1, 1)$ 到 $(n, m)$ 的每一条路径。如果一条路径满足:第一个单元格的数字等于最后一个单元格的数字,第二个单元格的数字等于倒数第二个单元格的数字,依此类推,则称该路径为回文路径。
你的目标是最少修改多少个单元格的值,使得矩阵中每一条路径都是回文路径。
输入格式
第一行包含一个整数 $t$($1 \le t \le 200$),表示测试用例的数量。
每个测试用例的第一行包含两个整数 $n$ 和 $m$($2 \le n, m \le 30$),表示矩阵的行数和列数。
接下来 $n$ 行,每行包含 $m$ 个整数 $a_{i, 1}, a_{i, 2}, \ldots, a_{i, m}$($0 \le a_{i, j} \le 1$)。
输出格式
对于每个测试用例,输出一个整数,表示你需要修改的最少单元格数量,使得矩阵中每一条路径都是回文路径。
说明/提示
前三个测试用例的最终矩阵如下:
$\begin{pmatrix} 1 & 1\\ 0 & 1 \end{pmatrix}$ $\begin{pmatrix} 0 & 0 & 0\\ 0 & 0 & 0 \end{pmatrix}$ $\begin{pmatrix} 1 & 0 & 1 & 1 & 1 & 1 & 1\\ 0 & 1 & 1 & 0 & 1 & 1 & 0\\ 1 & 1 & 1 & 1 & 1 & 0 & 1 \end{pmatrix}$
由 ChatGPT 4.1 翻译