#2253. 徐老师的回文矩阵
徐老师的回文矩阵
题目描述
徐老师继续复习数学知识,复习到了 "矩阵" 的概念,他再次突发奇想,如果将数学和字符串结合,那不是很有趣吗?
在字符串相关问题中有徐老师的一生之敌——回文字符串
但是回文字符串的问题总是问如何将一个字符串变为回文字符串
现在徐老师想到了,如果是将一个矩阵变为 回文矩阵 会如何呢?
有一个 的 字母矩阵,如果它任意一行或任意一列的字母连起来能够形成回文字符串,那么它就可以被称为 回文矩阵
例如有以下字母矩阵可以被称为回文矩阵,因为其中三行分别组成的字符串是 ,均为回文,每一列组成的字符串分别是,均为回文字符串
aaa
bbb
aaa
但是以下矩阵不能被称为回文矩阵,因为它的第二行组成的字符串 不是回文字符串
aaa
bcd
aaa
显然这里我们可以发现,不是每个字母矩阵都可以称为回文矩阵的
于是徐老师给出了一个操作:每次操作可以任选矩阵中的一个字母,将它变成它的上一个或下一个字母,例如 的上一个字母是 ,下一个字母是
特别的,这里我们认为 的上一个字母是 , 的下一个字母是
现在徐老师想知道,对于任意一个 字母矩阵,最少需要几次操作可以将它变成一个 回文矩阵?
输入格式
输入第一行包含两个整数 表示矩阵大小
接下来 行,每行一个长度为 的字符串,表示一开始给出的字母矩阵
输出格式
输出最小操作次数
数据范围
数据点编号 | 特殊性质 | |
---|---|---|
无 | ||
矩阵中只包含 两个字母 | ||
无 |
特别的,对于所有数据保证输入字母矩阵中只包含小写字母
样例输入1
2 3
aaa
zzz
样例输出1
3
样例解释1
将 全部变成上一个字母,或者将 全部变成下一个字母,操作次数均为
样例输入2
3 3
abc
def
ghi
样例输出2
20
相关
在下列比赛中: