dreptunghiuri

Time limit: 0.3s Memory limit: 16MB Input: dreptunghiuri.in Output: dreptunghiuri.out

Se consideră o matrice cu elemente 00 sau 11, cu LL linii (numerotate de la 11 la LL) şi CC coloane (numerotate de la 11 la CC).

Definim o zonă dreptunghiulară ca fiind o submatrice ce are pe contur numai valori 11 şi cu proprietatea că nu există valori de 11 nesituate pe contur şi în acelaşi timp la distanţa 11 faţă de un punct de pe contur. Două puncte sunt la distanţa 11 dacă şi numai dacă sunt vecine pe una dintre cele 88 direcţii.

Interiorul unei zone dreptunghiulare constă din elementele din submatrice nesituate pe contur.

O zonă dreptunghiulară poate fi inclusă complet în interiorul alteia. Definim ordinul unei zone dreptunghiulare ca fiind valoarea d+1d+1, unde dd este numărul de zone în interiorul cărora aceasta este inclusă.

Orice element 11 din matrice se află pe conturul unei singure zone dreptunghiulare.

Fig.14Fig.1-4 conţin exemple de zone dreptunghiulare. În fig.5fig.5 este o matrice în care se găsesc trei zone dreptunghiulare, dintre care zonele din interior au ordinul 22 iar cealaltă ordinul 11.

1 1 1 1 11 0 0 0 11 1 1 1 11 \ 1 \ 1 \ 1 \ 1 \\ 1 \ 0 \ 0 \ 0 \ 1 \\ 1 \ 1 \ 1 \ 1 \ 1 1 1 11 \ 1 \ 1 11 1 1 1 11 1 1 11 \ 1 \ 1 \ 1 \\ 1 \ 1 \ 1 \ 1 1 1 1 1 1 1 1 1 1 01 0 0 0 0 0 0 0 1 01 0 1 1 1 0 1 0 1 01 0 1 0 1 0 1 0 1 01 0 1 1 1 0 1 0 1 01 0 0 0 0 0 0 0 1 01 1 1 1 1 1 1 1 1 01 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 0 \\ 1 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 1 \ 0 \\ 1 \ 0 \ \textit{1} \ \textit{1} \ \textit{1} \ 0 \ \textit{1} \ 0 \ 1 \ 0 \\ 1 \ 0 \ \textit{1} \ 0 \ \textit{1} \ 0 \ \textit{1} \ 0 \ 1 \ 0 \\ 1 \ 0 \ \textit{1} \ \textit{1} \ \textit{1} \ 0 \ \textit{1} \ 0 \ 1 \ 0 \\ 1 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 1 \ 0 \\ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 1 \ 0
fig.1fig. 1 fig.2fig. 2 fig.3fig. 3 fig.4fig. 4 fig.5fig. 5

Cerință

Să se determine numărul total de zone dreptunghiulare din matrice, ordinul maxim al unei zone şi numărul de zone care au acest ordin maxim.

Date de intrare

Fişierul de intrare dreptunghiuri.in conţine pe prima linie numerele naturale LL şi CC separate printr-un spaţiu.

Pe fiecare din următoarele LL linii din fişier se află câte CC numere din mulţimea {0,1}\{ 0,1 \}, separate prin câte un spaţiu, reprezentând valorile din matrice.

Date de ieșire

Fişierul de ieşire dreptunghiuri.out conţine pe prima linie trei numere naturale D,OD, O şi NRNR, separate prin câte un spaţiu, unde DD este numărul total de zone dreptunghiulare din matrice, OO este ordinul maxim al unui astfel de zone, iar NRNR este numărul de zone de ordin maxim.

Restricții și precizări

  • 3L,C1 0003 \leq L, C \leq 1 \ 000
  • Datele de intrare sunt corecte. Va exista cel puţin o zonă dreptunghiulară în matrice
  • Pentru determinarea corectă a numărului de zone se acordă 20%20\% din punctajul pe fiecare test

Exemplu

dreptunghiuri.in

9 12
0 1 1 1 1 1 1 1 1 1 1 1
0 1 0 0 0 0 0 0 0 0 0 1
0 1 0 1 1 1 1 1 0 0 0 1
0 1 0 1 0 0 0 1 0 1 0 1
0 1 0 1 0 1 0 1 0 1 0 1
0 1 0 1 0 0 0 1 0 1 0 1
0 1 0 1 1 1 1 1 0 1 0 1
0 1 0 0 0 0 0 0 0 0 0 1
0 1 1 1 1 1 1 1 1 1 1 1

dreptunghiuri.out

4 3 1

Explicație

Sunt în total 44 zone dreptunghiulare, ordinul maxim al uneia dintre ele este 33 (cea formată dintr-un singur 11) şi este o singură astfel de zonă.

Log in or sign up to be able to send submissions!