Definició 1: Un parell de paraules en majúscula (p1, p2) forma una escala consonant si el nombre d’aparicions de consonants a p2 supera al nombre d’aparicions de consonants a p1.
Per exemple, el parell (MADUIXOT, PRESSEC) forma una escala consonant, perquè MADUIXOT té 4 consonants i PRESSEC en té 5. També la formen (POMA, PLATAN). Però en canvi no formen escala consonant (SINDRIA, PRUNA) ni (PERA, KIWI).
Definició 2: Una escala consonant de paraules de longitud k és una seqüència de k paraules escrites amb lletres majúscules, on tot parell de paraules consecutives de la seqüència forma una escala consonat.
Per exemple: POMA, MADUIXA, PLATAN, PRESSEC, ALBERCOCS és una escala consonant de paraules de longitud 5.
Definició 3: Donada una matriu amb n files i m columnes, diem que una seqüència de k posicions de la matriu és esglaonada si és de la forma {(i,j), (i+1, j+1),..., (i+k−1, j+k−1)}, per i, j, k complint 0≤ i, i+k−1 < n, 0≤ j, j+k−1<m.
Per exemple, donada una matriu de 6× 10, la seqüència {(0,2),(1,3),(2,4),(3,5),(4,6)} és una seqüència esglaonada de posicions que comença a la posició (0,2) i té longitud 5.
Es demana:
Feu un programa que, donada una matriu de paraules i un natural k , recorri la matriu per files i indiqui la primera posició (i,j) que conté una escala consonant de paraules de longitud k en la seqüència esglaonada de posicions que comença a (i,j).
El vostre programa ha de representar la matriu de paraules mitjançant el següent tipus:
Entrada
L’entrada conté un únic cas. El cas consisteix en el nombre de files n≥ 1, el nombre de columnes m≥ 1 de la matriu i un natural positiu k que determina la longitud de l’escala consonant de paraules a cercar. A continuació venen n línies amb m strings cadascuna. Cada string està format només per lletres majúscules.
Sortida
Cal escriure en una línia el número de fila, el número de columna de la matriu, i la paraula amb què comença la primera (segons un recorregut per files) escala consonant de paraules de longitud k en una seqüència esglaonada de posicions. Cal escriure -1 -1 si la matriu no en conté cap.
Seguiu el format especificat als exemples. El vostre codi ha de seguir bones normes d’estil, i ha de contenir els comentaris que considereu oportuns.
Input
4 6 2 SA SO TO ON NI VI VI SA SO TO ON NI NI VI SA SO XX ON YY ZZ XX YY ZZ XX
Output
1 3 TO
Input
1 6 1 SA SO TO ON NI VI
Output
0 0 SA
Input
2 6 2 SA SO TO ON NI VI VI SA SO TO ON NI
Output
-1 -1
Input
3 6 4 SA SO TO ON NI VI SA SO TO ON NI VI SA SO TO ON NI VI
Output
-1 -1