

O translație este o mișcare de o unitate într-unul dintre cele patru puncte cardinale: nord, sud, est sau vest. Similar, o rotație este o rotație cu numărul corespunzător de grade în sensul acelor de ceasornic în jurul originii planului cartezian, adică punctului . Mai precis, plecând din punctul și aplicând fie o translație , fie o rotație , se ajunge într-un punct conform tabelelor de mai jos:
| N | ||
| S | ||
| E | ||
| V |
După o noapte furtunoasă, Gigel pleacă din crâșma satului, poziționată în punctul de coordonate și efectuează în ordine o succesiune alternativă de translații și rotații: , în urma cărora ajunge la el acasă, în punctul de coordonate .
Cerință
- Date fiind , șirul de translații , precum și șirul de rotații , să se determine coordonatele casei lui Gigel .
- Date fiind , șirul de translații , precum și coordonatele casei lui Gigel , să se determine dacă există un șir de rotații astfel încât în urma efectuării succesiunii de translații și rotații Gigel să ajungă la el acasă. Doar pentru această cerință, se vor da scenarii independente, iar voi va trebui să rezolvați problema separat și să răspundeți (afirmativ sau negativ) pentru fiecare dintre cele scenarii în parte.
- Date fiind , șirul de translații , precum și coordonatele casei lui Gigel , să se determine un șir de rotații astfel încât în urma efectuării succesiunii de translații și rotații Gigel să ajungă la el acasă. Doar pentru această cerință, se garantează că un astfel de șir de rotații există. În caz că există mai multe șiruri de rotații posibile, se acceptă oricare.
Date de intrare
Prima linie va conține numărul cerinței . Doar pentru , prima linie va conține și numărul de scenarii de rezolvat (caz în care și sunt separate printr-un spațiu). În funcție de valoarea , restul intrării este structurat după cum urmează:
- Dacă , atunci a doua linie va conține numărul , a treia linie va conține șirul de translații sub forma unui șir de caractere nedespărțite prin spații , iar a patra linie va conține șirul de rotații sub forma unui șir de numere în care elementele consecutive sunt separate prin câte un spațiu.
- Dacă , atunci urmează scenarii de rezolvat. Fiecare scenariu este descris pe trei linii. Prima linie va conține numărul , a doua linie va conține șirul de translații sub forma unui șir de caractere nedespărțite prin spații , iar a treia linie va conține coordonatele casei lui Gigel și , separate printr-un spațiu.
- Dacă , atunci a doua linie va conține numărul , a treia linie va conține șirul de translații sub forma unui șir de caractere nedespărțite prin spații , iar a patra linie va conține coordonatele casei lui Gigel și , separate printr-un spațiu.
Date de ieșire
În funcție de numărul cerinței :
- Dacă , se vor afișa pe o singură linie coordonatele casei lui Gigel și , separate printr-un spațiu.
- Dacă , se vor afișa linii, câte una pentru fiecare scenariu. Fiecare linie va conține unul dintre mesajele
DAsauNU, reflectând răspunsul (afirmativ sau negativ) pentru scenariul respectiv. - Dacă , se va afișa pe o singură linie șirul de rotații , elementele consecutive fiind separate prin câte un spațiu.
Restricții și precizări
- pentru .
- Dacă , atunci pentru .
- Dacă , atunci .
- Dacă , atunci .
| # | Punctaj | Restricții |
|---|---|---|
| 1 | 29 | și pentru |
| 2 | 27 | |
| 3 | 9 | |
| 4 | 12 | și |
| 5 | 9 | și |
| 6 | 14 |
Exemplul 1
rotatii.in
1
4
NNSV
0 270 90 90
rotatii.out
2 2
Explicație
În acest test avem , , șirul de translații și cel de rotații . Gigel pleacă din și execută în ordine succesiunea de translații și rotații . Astfel, traseul său este:
De unde deducem coordonatele casei sale .
Exemplul 2
rotatii.in
2 5
4
NNSV
2 2
4
NNSV
-2 2
6
NNNNEE
2 4
5
SSSSS
100 100
4
NNSV
-2 1
rotatii.out
DA
DA
DA
NU
NU
Explicație
În acest test avem și scenarii de rezolvat:
- Primul scenariu corespunde situației din primul exemplu (șirul de rotații convine), deci răspunsul este
DA. - Al doilea scenariu este asemănător primului: observăm că în traseul său, Gigel trece deja prin înainte de ultima rotație, deci este suficient să anulăm ultima rotație. Cu alte cuvinte, șirul de rotații convine, deci răspunsul este
DA. - În al treilea scenariu, succesiunea de translații l-ar duce deja pe Gigel la el acasă, adică în punctul de coordonate . Prin urmare, șirul de rotații convine, și deci răspunsul este
DA. - În al patrulea scenariu, casa lui Gigel se află în punctul de coordonate , care este prea departe de punctul de plecare date fiind și șirul de translații , indiferent ce șir de rotații am alege. Prin urmare, răspunsul pentru acest scenariu este
NU. - În al cincilea scenariu, deși casa lui Gigel, aflată în punctul de coordonate , nu este atât de departe de punctul de plecare, niciun șir de rotații nu convine, deci răspunsul este
NU.
Exemplul 3
rotatii.in
3
4
NNSV
2 2
rotatii.out
0 270 90 90
Explicație
Acest test corespunde situației din primul exemplu, pentru care știm deja că șirul de rotații convine. Un alt răspuns posibil ar fi fost . Orice răspuns corect se acceptă.