După terminarea facultăţii, Ionică a ajuns inginer constructor şi vrea să se angajeze în oraşul său natal. După ce studiază ofertele de muncă, găseşte un post de inginer la Primărie. Pentru a ocupa acest post trebuie să susţină o probă teoretică. La acestă probă, el trebuie să realizeze un proiect pentru pavarea pieţei din centrul oraşului.
Piaţa are forma unui dreptunghi şi are trasat un caroiaj, astfel încât poate fi reprezentată ca un tablou bidimensional cu linii şi coloane. Fiecare element al matricei corespunde unui pătrat cu latura . Pavarea se poate realiza folosind dale de două tipuri:
Tipul F
:
Tipul I
:
Observaţi că o dală de tip F
este formată din pătrate de latură , dispuse în forma literei F
(deci acoperă o suprafaţă cu aria de ), iar o dală de tipul I
este formată din două pătrate cu latura de (deci va avea aria ).
Prin pavarea pieţei se înţelege acoperirea fiecărui pătrat de latură al pieţei cu exact o singură dală. Dalele se pot roti şi pot fi utilizate pe orice faţă.
Restricţia impusă de primar este ca suprafaţa din piaţă pavată cu dale de tipul F
să aibă aceeaşi arie cu cea pavată cu dale de tipul I
.
Pentru a vizualiza modalitatea de pavare a pieţei, Ionică va numerota dalele cu numere naturale consecutive începând de la . Numărul asociat unei dale va fi scris în fiecare pătrat din piaţă acoperit de dala respectivă.
Cerinţă
Scrieţi un program care să determine o modalitate de pavare a pieţei, care să respecte condiţiile de mai sus.
Date de intrare
Fişierul de intrare pavare.in
va conţine pe prima linie două numere naturale separate prin spaţiu reprezentând numărul de linii şi respectiv numărul de coloane ale matricei.
Date de ieşire
Fişierul de ieşire pavare.out
va conţine linii, pe fiecare linie fiind scrise numere naturale separate prin câte un spaţiu. Valorile scrise în fişierul de ieşire sunt numerele asociate dalelor care acoperă cele pătrate ale pieţei.
Restricţii şi precizări
- Produsul este multiplu de .
- Soluţia nu este unică, se poate afişa orice soluţie.
Exemplu
pavare.in
6 4
pavare.out
7 7 8 8
1 1 2 2
1 3 3 2
1 1 2 2
1 4 4 2
5 5 6 6
Explicaţie
Am pavat o piaţă cu linii şi coloane, având aria . Pentru pavare s-au utilizat dale ( dale de tip F
care acoperă o suprafaţă cu aria şi dale de tip I
, care acoperă restul pieţei, având de asemenea aria .
Fişierul de ieşire corespunde pavării: