Fişierul intrare/ieşire:zar.in, zar.outSursăONI 2004 clasa a 8-a
AutorAdrian Nita, Maria NitaAdăugată defrancuCristian Francu francu
Timp execuţie pe test0.1 secLimită de memorie2048 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Zar (clasa a 8-a)

Pe tabla de şah de dimensiune NxN se găseşte un zar (având latura egală cu latura pătratului ce defineşte un pătrat al tablei de şah). Acest zar se poate rostogoli în conformitate cu secvenţa de comenzi care se citeşte dintr-un fişier, fiecare caracter citit având semnificaţia:

  • u rostogolire în pătratul de deasupra (up);
  • d rostogolire în pătratul de dedesubt (down);
  • l rostogolire în pătratul din stânga (left);
  • r rostogolire în pătratul din dreapta (right).

Se cunosc:

  • poziţia iniţială a zarului dată prin punctul de coordonate (linie, coloană);
  • valorile aflate pe feţele zarului date printr-un şir: sus, jos, stânga, dreapta, faţă, spate, în această ordine, valori distincte între 1 şi 6;
  • secvenţa de mişcări date prin caracterele ‘u’, ‘d’, ‘l’, ‘r’.

Cerinţă

Să se determine sumele de valori pe care le vor avea, în urma secvenţei de mişcări, feţele: sus, jos, stânga, dreapta, faţă, spate (în această ordine), precum şi mulţimea valorilor ce sunt pe faţa de sus a zarului la fiecare mutare a acestuia. Prima poziţie se consideră cea iniţială.
Secvenţa de mişcări a zarului se realizează cât timp zarul printr-o mutare rămâne pe tabla de şah. Dacă în urma unei mutări zarul ar ieşi în afara tablei, se vor afişa rezultatele obţinute până în acel moment.

Date de intrare

Fişierul de intrare zar.in are structura:

LinieExplicaţie
N
lp cp
v1 v2 v3 v4 v5 v6
h
c1 c2 c3 … ch
cu semnificaţia dimensiunea tablei
cu semnificaţia linia iniţială, coloana iniţială pentru poziţia zarului.
valorile feţelor zarului, valori distincte cuprinse între 1 şi 6.
numărul de caractere ce reprezintă secvenţa de mutări
caracterele ‘u’, ‘d’, ‘l’, ‘r’ cu semnificaţia mutarea următoare a zarului

Date de ieşire

Fişierul de ieşire zar.out are structura:

  • Pe prima linie separate prin spaţiu 6 valori: suma_sus suma_jos suma_stanga suma_dreapta suma_fata suma_spate cu semnificaţia suma punctelor de pe feţele specificate, în această ordine.
  • Pe a doua linie h+1 valori ce reprezintă valorile ce sunt pe faţa de sus prin secvenţa de mişcări propusă. Pe prima poziţie este valoarea iniţială.

Restricţii

  • secvenţa de mişcări poate avea până la 1000 de caractere ‘u’, ‘d’, ‘l’, ‘r’
  • 4 ≤ N ≤ 100

Exemple

zar.inzar.out
8
7 3
1 6 5 2 4 3
19
uuuuuurrrrdddlldduu
72 68 77 63 67 73
1 4 6 3 1 4 6 5 1 2 6 4 1 3 2 4 6 3 6 4
8
7 3
1 6 5 2 4 3
9
uuuuuuuuu
25 24 35 14 27 22
1 4 6 3 1 4 6
Trebuie sa te autentifici pentru a trimite solutii. Click aici