Enthält das Raster einen Zyklus?

Gegeben ist ein Raster mit der Höhe h und der Breite w, das mit Buchstaben gefüllt ist. Dabei darfst du nur Felder betreten, die denselben Buchstaben enthalten (beispielsweise nur Felder mit a oder nur Felder mit b usw.). Nun möchtest du herausfinden, ob es möglich ist, dich so im Raster zu bewegen, dass du irgendwann wieder auf einer bereits besuchten Zelle landest. Beachte, dass du nicht sofort auf die vorherige Zelle zurückkehren darfst. Außerdem kannst du dich nur in horizontaler oder vertikaler Richtung zu benachbarten Zellen bewegen.
Anders ausgedrückt willst du prüfen, ob es in diesem Raster einen Zyklus aus identischen Buchstaben gibt.

Eingabe

Die erste Zeile der Eingabe enthält zwei ganze Zahlen h und w (1 ≤ h, w ≤ 200).
Die nächsten h Zeilen enthalten jeweils w Zeichen, bestehend aus lateinischen Kleinbuchstaben.

Ausgabe

Das Programm soll Yes ausgeben, wenn ein Zyklus gefunden wird, andernfalls No.

Beispiele

Eingabe
Ausgabe
4 4 aaaa abba abbc aaaa
Yes
4 4 aaaa abba abdc aaaa
No
4 4 aaaa abba abda aaaa
Yes
4 4 ccca cdcc ccec fccc
Yes
3 3 abb bcb bba
No
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue