Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | cruce.in, cruce.out | Sursă | FMI No Stress 3 |
Autor | Florian Marcu, Ionut Bogdanescu | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Cruce
Se da o matrice N*M ce contine doar litere mici ale alfabetului englez. Sa se calculeze cate cruci palindrom exista.
O cruce palindrom de centru (x,y) cu laturile de lungimi K1, respectiv K2 (K1,K2 ≥ 1) este formata din celulele (x-K1, y), (x-K1+1, y), ..., (x+K1, y) pe verticala si (x, y-K2), (x, y-K2+1), ..., (x, y+K2) pe orizontala. In plus (x-K1, y), (x-K1+1, y), ..., (x+K1, y) si (x, y-K2), (x, y-K2+1), ..., (x, y+K2) trebuie sa fie palindroame.
Un sir se numeste palindrom daca citit de la stanga la dreapta este identic cu sirul citit de la dreapta la stanga.
Date de intrare
Fişierul de intrare cruce.in contine pe prima linie 2 numere N si M. Pe urmatoarele N linii se afla M caractere (fara spatii intre ele) pe fiecare linie.
Date de ieşire
În fişierul de ieşire cruce.out se va afisa un singur numar natural reprezentand numarul de cruci palindrom din matricea data.
Restricţii
- 1 ≤ N,M ≤ 100
Exemplu
cruce.in | cruce.out |
---|---|
3 5 aaaaa ccccc aaaaa | 4 |
Explicaţie
O cruce este centrata in (2,2), doua cruci sunt centrate in (2,3) si cea de-a patra cruce este centrata in (2,4).