#199. 蓝桥杯赛迷宫

蓝桥杯赛迷宫

题目描述

把一个 nnmm 列的字符阵列看做一个迷宫,迷宫仅包含 LLQQBBSS 中的大写母(蓝桥杯赛的汉语拼音首字母)。初始时,你可以从任意一个“LL”字母开始,移向相邻的“QQ”字母,然后从此“QQ”字母出发,移向相邻的“BB”字母,然后从此“BB”字母出发,移向相邻的“SS”字母……。这样,你就算是走过了一个“LQBSLQBS”字符序列。接下来,仍然可以从此“SS”字母出发,移向相邻的“LL”字母……,重复上述的动作,你就可以不断地走过“LQBSLQBS”序列。请注意,所谓相邻仅包含上、下、左、右 44 个方向,且只能从 LL->QQ,从 QQ->BB,从BB->SS,从 SS->LL。可以想像,由于选择的出发点不同,我们有可能在迷宫中走过无数次的“LQBSLQBS”,或者是有限次的“LQBSLQBS”,或者一次也走不了。 \\编程实现: \\请你编写程序,求出在给定的迷宫中,我们最多可以走过多少次“LQBSLQBS”?

输入格式

第一行:正整数 nn,mm,表示迷宫的规模为 nnmm 列; \\接下来的 nn 行:每行 mm 个符合题意的字母,字母间无空格。

输出格式

一个整数。即:如果在迷宫中可以无限次的走过“LQBSLQBS”,输出1-1,否则,输出可以走过“LQBSLQBS”的最多次数

1 2
LQ
0
3 3
LSB
QBQ
BSL
-1
4 4
BLQB
BBQS
SBQL
QQQQ
2

数据规模与约定

对于 100%100\% 的数据,0n,m1000\le n,m \le 100