Fișierul intrare/ieșire | zar.in, zar.out | Sursă | ONI 2004 clasa a 8-a |
---|---|---|---|
Autor | Adrian Niță | Maria Niță | Adăugată de |
|
Timp de execuție pe test | 0.1 sec | Limită de memorie | 2048 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
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:
Linie | Explicaț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.in | zar.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 |