カメヲラボ

主にプログラミングとお勉強全般について書いてます

CodeIQ過去問集43:「MENMA」を探そう

本稿はCodeIQで出題された 第1回プロコン第3問:【猿】偏食の猿の好き嫌いを見極めよう という問題を再編集したものです。 ※出題時と記述が一部異なる場合がありますがご了承ください。

第1問がまだの方はこちら 第2問がまだの方はこちら

第3問:「MENMA」を探そう

【ストーリー】

くそ生意気な雉に頭の良さをみせつけたあなた。
今やウザいくらいあなたにべったりの雉を無事に仲間にできました。
そして、ついに最後の仲間、猿に出会います。

物語のように猿にキビ団子を渡すあなた。
猿  「おいら団子なんて食わねえよ」
あなた「…(てか、この世界でキビ団子全然役に立たねえな。)」
猿  「あ、そうだ。おいらラーメンっていう食い物を一度でいいから食ってみてえんだ」
あなた「まあ、インスタントでいいなら作ってやるぞ」
猿  「ほんとかい?ラーメンくれたら鬼でもなんでも倒してやる」

f:id:Ozy:20150605125848j:plain

ラーメンを作って、猿に出そうとしたその瞬間でした。
猿  「あ、まさかとは思うがメンマは入れてないよな。入ってたら鬼の味方するからな」
メンマ入りのラーメンを作ってしまったあなたは、大慌てでメンマをラーメンから取り除くのでした。

※この画像は私が用意したものではないので、問題が発生した場合はすぐに差し替えるか消します

【問題】

n×n(5≦n≦100)の文字列の中から、「MENMA」と連続する部分があるかどうかを判定してください。

f:id:Ozy:20180430171438j:plain

のように一直線に並んでいる場合だけでなく、

f:id:Ozy:20180430171435j:plain

f:id:Ozy:20180430171433j:plain

のように途中で折れ曲がっていても構いません。

【入力】

標準入力から、n×n(5≦n≦100)の文字列が与えられます。 文字列に含まれる文字は「A, E, M, N」のいずれかで、改行コードはLFです。

【出力】

標準出力に、文字列に連続する「MENMA」が含まれる場合は「yes」、含まれない場合は「no」と出力してください。出力にはyes/no以外の文字は出力しないでください。行末の改行については有無を問いません。

【入出力例】

Case 1: Input

MENME
NMENM
ENMEN
MENMA
NMENM

Case 1: Output

yes

Case 2: Input

EMNME
MNANE
EAENN
MEEEE
EMNEM

Case 2: Output

no

【解答例】