== include(page="template/taskheader" task_id="peridia") ==
Gigel a primit de Crăciun un joc numit Peridia. Acesta contine o tablă pătratică de dimensiuni NxN, umplută cu 0, pe care asează un zar la coordonatele (1,1). Pe fata de sus este un număr X, pe fata din stanga un număr Y, iar pe fata dinspre el un număr Z. Jucătorul rostogoleste zarul pe tablă de K ori intr-una din cele patru directii: Nord, Est, Sud, Vest, codificate cu N, E, S respectiv V. Clasic, nu? Ei bine nu. Zarul, atunci cand ajunge pe o celulă care nu depăseste limitele tablei, dacă pe aceasta este numărul 0, se va imprima numărul de pe fata de jos a zarului. Insă,dacă numărul de pe celulă este diferit de 0, la numărul de pe celula respectivă se va aduna numărul de pe fata de jos a zarului.
Costel a primit de Crăciun un joc numit Peridia. Acesta conține o tablă pătratică de dimensiuni [*N*]x[*N*], umplută cu 0, pe care așează un zar la coordonatele (1,1). Pe fața de sus este un număr *X*, pe fața din stânga un număr *Y*, iar pe fața dinspre el un număr *Z*. Jucătorul rostogolește zarul pe tablă de *K* ori într-una din cele patru direcții: Nord, Est, Sud, Vest, codificate cu N, E, S respectiv V. Clasic, nu? Ei bine nu. Zarul, atunci când ajunge pe o celulă care nu depășeste limitele tablei, dacă pe aceasta este numărul 0, se va imprima numărul de pe fața de jos a zarului. Însă, dacă numărul de pe celulă este diferit de 0, la numărul de pe celula respectivă se va aduna numărul de pe fața de jos a zarului.
Se cunosc N, X, Y, Z si K, precum si cele K coordonate: Nord, Sud, Est, Vest, codificate cu unul din 4 caractere N, E, S, V. După ce s-au executat mutările zarului, se cer numerele de pe tablă diferite de 0 in ordine crescătoare.
Se cunosc *N*, *X*, *Y*, *Z* și *K*, precum și cele *K* coordonate: Nord, Sud, Est, Vest, codificate cu unul din 4 caractere N, E, S, V. După ce s-au executat mutările zarului, se cer numerele de pe tablă diferite de 0 în ordine crescătoare.
h2. Date de intrare
Pe prima linie a fisierului de intrare peridia.in se vor afla N, X, Y, Z si K, avand rolul din enunt. Pe a doua linie a fisierului se vor afla K caractere sub codificarea N, E, S, V, reprezentand cele 4 coordonate: Nord, Est, Sud si Vest.
Pe prima linie a fișierului de intrare peridia.in se vor afla *N*, *X*, *Y*, *Z* și *K*, având rolul din enunț. Pe a doua linie a fișierului se vor afla *K* caractere sub codificarea N, E, S, V, reprezentând cele 4 coordonate: Nord, Est, Sud și Vest.
h2. Date de ieșire
In fisierul de iesire peridia.out se vor afla mai multe numere, separate prin spatiu, reprezentand toate numerele diferite de 0 de pe tabla de joc, in ordine crescatoare.
În fișierul de ieșire peridia.out se vor afla mai multe numere, separate prin spațiu, reprezentând toate numerele diferite de 0 de pe tabla de joc, în ordine crescătoare.
h2. Restricții
* 1 ≤ N ≤ 1.000
* 1 ≤ X,Y,Z ≤ 6
* 1 ≤ K ≤ 10.000
* Suma numerelor dintr-o celulă nu depaseste 100.000
* Dintre numerele X, Y, Z oricare două NU au suma 7
* Dacă după o mutare zarul ar ajunge in afara tablei de joc, această mutare nu se execută si numărul din celulă rămane acelasi
* Se iau in considerare si numerele alfate pe fata de jos de la inceputul jocului, respectiv de la finalul acestuia
* 1 ≤ *N* ≤ 1.000
* 1 ≤ *X*, *Y*, *Z* ≤ 6
* 1 ≤ *K* ≤ 10.000
* Dintre numerele *X*, *Y*, *Z* oricare două *NU* au suma 7
* De asemenea, suma numerelor de pe oricare două fețe opuse este 7
* Dacă după o mutare zarul ar ajunge în afara tablei de joc, această mutare nu se execută și numărul din celulă rămâne același. Se va continua cu următoarea mutare.
* Se iau în considerare și numerele aflate pe fața de jos de la începutul jocului, respectiv de la finalul acestuia
h2. Exemplu
|_. peridia.in |_. peridia.out|
table(example).
|_. peridia.in |_. peridia.out|_. Explicație|
|5 1 2 3 10
EEESSVVNNV| 1 1 2 2 3 3 5 10 12 |
h3. Explicație
Acesta este tabelul corespunzator mutărilor de pe tablă:
EEESSVVNNV
| 1 1 2 2 3 3 5 10 12
| Acesta este tabelul corespunzător mutărilor de pe tablă:
!problema/peridia?Capture.PNG!
|
== include(page="template/taskfooter" task_id="peridia") ==