#AT2574. B - Find snuke

B - Find snuke

当前没有测试数据。

B - 找到snuke

得分:250分

问题描述

有一个$H$行$W$列的网格。每个单元格上都写着一个小写英文字母。 我们用$(i, j)$表示从上到下第$i$行,从左到右第$j$列的单元格。

网格上的字母用$H$个字符串$S_1,S_2,\ldots, S_H$表示,每个字符串长度为$W$。 $S_i$的第$j$个字母表示$(i, j)$上的字母。

在网格上存在一个唯一的连续的集合(沿着垂直、水平或对角线方向),其中依次写有snuke。 找到这样单元格的位置,并按照输出部分的格式打印出来。

当且仅当满足以下所有条件时,五个单元格$(A_1,A_2,A_3,A_4,A_5)$被称为连续的集合(沿着垂直、水平或对角线方向),并依次写有snuke

  • 对于所有的$1\leq i\leq 4$,单元格$A_i$和$A_{i+1}$共享一个角或一条边。
  • 单元格$A_1,A_2,A_3,A_4$和$A_5$的中心在一条常规间距的直线上。

约束条件

  • $5\leq H\leq 100$
  • $5\leq W\leq 100$
  • $H$和$W$为整数。
  • $S_i$是长度为$W$的由小写英文字母组成的字符串。
  • 给定的网格有一个符合要求的唯一单元格集合。

输入

输入以以下格式从标准输入中给出:

HH WW

S1S_1

S2S_2

\vdots

SHS_H

输出

按照以下格式打印五行。

设$(R_1,C_1),(R_2,C_2)\ldots,(R_5,C_5)$是所需集合中写有s, n, u, ke的单元格。 第$i$行应按照以下顺序包含$R_i$和$C_i$,并用空格隔开。

换句话说,按以下格式打印:

``` $R_1$ $C_1$ $R_2$ $C_2$ $\vdots$ $R_5$ $C_5$ ```

具体示例请参见下面的示例输入和输出。


6 6
vgxgpu
amkxks
zhkbpp
hykink
esnuke
zplvfj
5 2
5 3
5 4
5 5
5 6

元组$(A_1,A_2,A_3,A_4,A_5)=((5,2),(5,3),(5,4),(5,5),(5,6))$满足条件。
实际上,它们上面写的字母分别是s, n, u, ke
对所有$1\leq i\leq 4$,单元格$A_i$和$A_{i+1}$共享一个边;
并且这些单元格的中心在一条公共直线上。


5 5
ezzzz
zkzzz
ezuzs
zzznz
zzzzs
5 5
4 4
3 3
2 2
1 1

元组$(A_1,A_2,A_3,A_4,A_5)=((5,5),(4,4),(3,3),(2,2),(1,1))$满足条件。
然而,仅仅 $(A_1,A_2,A_3,A_4,A_5)=((3,5),(4,4),(3,3),(2,2),(3,1))$违反了第三个条件,因为这些单元格的中心不在一条公共直线上,尽管它满足了第一和第二个条件。


10 10
kseeusenuk
usesenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk
9 3
8 3
7 3
6 3
5 3