#4409. [USACO15OPEN] Moocryption-铜组

[USACO15OPEN] Moocryption-铜组

题目描述

许多人不知道,奶牛其实很喜欢谜题,尤其是文字谜题。农夫约翰的奶牛们最近创作了一个有趣的“找单词”谜题。这类谜题的一个例子如下:

USOPEN
OOMABO
MOOMXO
PQMROM

作为奶牛,她们唯一感兴趣的单词是“MOO”,这个单词可以在谜题中以多种方式出现,包括水平、垂直或对角线方向。上面的例子中包含6个“MOO”。

农夫约翰也是文字谜题的爱好者。由于奶牛们不想让他在自己有机会尝试之前就解出她们的找单词谜题,她们用“替换密码”对谜题内容进行了加密,即用某个不同的字母替换字母表中的每个字母。例如,A可能映射到X,B可能映射到A,依此类推。没有字母会映射到自身,且没有两个字母会映射到同一个字母(否则解密就会有歧义)。

不幸的是,奶牛们忘记了解密她们谜题所需的替换密码。请帮助她们确定,对于一个合适的替换密码选择,谜题中可能存在的“MOO”的最大数量。

输入格式

  • 第一行输入包含NNMM,分别描述谜题的行数和列数(均不超过50)。
  • 接下来的NN行,每行包含MM个字符,描述加密谜题的一行。每个字符都是A..Z范围内的大写字母。

输出格式

  • 输出如果用合适的密码解密后,谜题中可能包含的“MOO”的最大数量。

样例

样例输入

4 6
TAMHGI
MMQVWM
QMMQSM
HBQUMQ

样例输出

6

这是问题开头所述的谜题经过加密后的样子。这里“M”和“O”分别被替换成了“Q”和“M”。

数据范围

NNMM均不超过50,字符为A..Z的大写字母