9M3 | pentagon

This was the problem page during the contest. Access the current page here.
Time limit: 0.1s Memory limit: 4MB Input: pentagon.in Output: pentagon.out

În urma bombardamentelor din 1111 septembrie 20012001, clădirea Pentagonului a suferit daune la unul din pereţii clădirii. Imaginea codificată a peretelui avariat se reprezintă sub forma unei matrice cu mm linii şi nn coloane, ca în figura de mai jos:

111000011111000011111000000011100000001111100001111110000111 \\ 1100001111 \\ 1000000011 \\ 1000000011 \\ 1110000111 \\

unde 11 reprezintă zid intact și 00 reprezintă zid avariat

Sumele alocate de Bin Laden pentru refacerea Pentagonului vor fi donate celor care vor ajuta americanii să refacă această clădire prin plasarea, pe verticală, a unor blocuri de înălţimi kk, k=1,,mk = 1, \ldots, m, şi lăţime 11, în locurile avariate.

Cerință

Pentru o structură dată a unui perete din clădirea Pentagonului, determinaţi numărul minim al blocurilor, de înălţimi k=1,k=2,,k=mk=1, k=2, \ldots, k=m, necesare refacerii clădirii.

Date de intrare

Fişierul de intrare pentagon.in conţine pe prima linie dimensiunile mm şi nn ale peretelui clădirii, iar pe următoarele mm linii câte o secvenţă de caractere 11 sau 00 de lungime nn.

Date de ieșire

Fişierul pentagon.out va conţine pe câte o linie, ordonate crescător după kk, secvenţe:

  • kk, nrnr - unde kk este înalţimea blocului, iar nrnr este numărul de blocuri de înălţime kk, separate prin câte un spaţiu.

Restricții și precizări

  • 1<m,n2001 < m,n \leq 200
  • nu se vor afişa blocurile de înălţime kk, a căror număr este zero (00).

Exemplu

pentagon.in

5 10
1110000111
1100001111
1000000011
1111101111
1110000111

pentagon.out

1 7
2 1
3 2
5 1

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