pav

Time limit: 0.1s Memory limit: 16MB Input: pav.in Output: pav.out

Ionică, tânăr inginer constructor, vrea să-şi schimbe locul de muncă cu unul mai bine plătit. Pentru a ocupa acest nou post trebuie să prezinte un CV şi să susţină o probă teoretică. Dacă la CV stă foarte bine, datorită seriozităţii de care a dat dovadă la vechiul loc de muncă, hopul cel mai mare este proba teoretică. La această probă el primeşte ca sarcină pavarea pieţei din centrul oraşului, de formă pătratică, având latura de 2n2^n metri. Acesteia îi asociem un tablou bidimensional cu 2n2^n linii şi 2n2^n coloane, atât liniile cât şi coloanele fiind numerotate cu numere de la 11 la 2n2^n. Dalele care vor fi folosite la pavare sunt formate din 33 pătrate, fiecare de latură 1m21 \text{m}^2, ca în figură:

Piaţa conţine un pom vechi de câteva sute de ani, care trebuie să rămână şi după pavare. Acest pom ocupă un singur pătrat de latură 1m21 \text{m}^2 din piaţă (cât un element din tabloul bidimensional asociat pieţei). Prin pavarea pieţei se înţelege acoperirea fiecărui pătrat de latură 1m21 \text{m}^2 al pieţei cu exact o singură dală, exceptând pătratul unde se găseşte pomul. Pentru a vizualiza modalitatea de pavare a pieţei, Ionică va numerota dalele cu numere naturale consecutive începând de la 11. 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 pav.in va conţine pe prima linie numărul nn, iar pe linia a doua poziţia pomului descrisă prin indicii liniei şi coloanei corespunzătoare, separate printr-un spaţiu.

Date de ieșire

Fişierul de ieşire pav.out va conţine 2n2^n linii, pe fiecare linie fiind scrise 2n2^n numere naturale separate prin câte un spaţiu. Valorile scrise în fişierul de ieşire sunt numere consecutive începând cu 11 asociate dalelor care acoperă piaţa. Pentru elementul din tablou unde se găseşte pomul se va folosi cifra 00.

Restricții și precizări

  • 1n91 \leq n \leq 9
  • Soluţia nu este unică, se poate afişa orice soluţie.
  • O dală poate fi rotită cu 90°90 \degree, 180°180 \degree, respectiv 270°270 \degree.

Exemplu

pav.in

2
1 4

pav.out

2 2 5 0
2 1 5 5
3 1 1 4
3 3 4 4 

Explicație

Am pavat o piaţă cu 44 linii şi 44 coloane, având pomul pe linia 11 şi coloana 44. Pentru pavare s-au utilizat 55 dale (numerotate cu 11, 22, 33, 44, 55). Fişierul de ieşire corespunde pavării:

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