Entrenando con gepeto
Autores: Benjamín Letelier, Vicente Opazo
Tiempo límite: 5 segundos
Memoria límite: 256 megabytes
Benjamín está cansado de no poder mejorar en programación competitiva, por lo que al fin hizo caso a sus amigos y le pidió ayuda a Gepeto. Como todos saben, Gepeto nunca se equivoca, asi que sus respuestas siempre son correctas aún por más tontas que suenen. En este caso, su sabia respuesta fue que, para mejorar, tenía que completar diariamente una tarea sobre una sopa de letras muy particular.
La sopa de letras consiste en una matriz de \(N\times N\) letras mayúsculas del alfabeto inglés, y las palabras a encontrar se encuentran de manera horizontal (\(\to\)), vertical (\(↓\)) y diagonal (\(↘\)) \(―\) únicamente como indican las flechas.
Por otro lado, la simple tarea consiste en indicarle a Gepeto si existe o no la sigla TCP (Training Competitive Programming) dentro de la sopa de letras.
Benjamín sabe que esto puede tomar tiempo si lo hace manualmente, y también es consciente de que es malo programando, por lo que te pidió ayuda para resolver la tarea encomendada por Gepeto.
Entrada
La primera línea de la entrada contiene el entero \(N\) (\(1 \le N\le 1000\)). Luego, para cada una de las siguientes \(N\) líneas, se entregará un string de tamaño \(N\), con únicamente letras del alfabeto inglés, representando la sopa de letras que entregó Gepeto.
Salida
Imprime SI, si existe la sigla TCP dentro de la sopa de letras en alguna de las direcciones válidas. En caso contrario, imprime NO.
Ejemplos
Entrada 1
8
TCPTCPTT
GOODLUCK
PABCFPCT
CHAVEFUN
TDOXNOTX
GIVEUPLS
TRYAGAIN
XXXXXTCP
Salida 1
SI
Nota
- En el ejemplo, la sigla
TCPaparece de la siguiente manera:
\(\to\): Se encuentra 3 veces presente (dos veces en la primera fila y una vez en la última).
\(↓\): No se encuentra presente.
\(↘\): No se encuentra presente.
Como la sigla aparece al menos una vez en las direcciones válidas, la respuesta es SI.
Comentarios