| Fișierul intrare/ieșire | traseu2.in, traseu2.out | Sursă | Testare IQ Academy 2023 |
|---|---|---|---|
| Autor | Mihai Tuțu | Paul Enache | Adăugată de |
|
| Timp de execuție pe test | 0.15 sec | Limită de memorie | 512 KB |
| Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Traseu2 (clasa a 6-a)
Elevii cursurilor de robotică din cadrul Anavdren au primit sarcină nouă: să programeze un roboțel să se deplaseze pe o masă specială. Aceasta are forma dreptunghiulară, este împărțită în n linii și m coloane și marginile ei au zone de teleportare.
Robotul trebuie programat să plece dintr-o anumită căsuță și să parcurgă un anumit traseu, dat. Traseul este compus din x mișcări, iar robotul se mișcă k căsuțe într-una dintre direcțiile N, E, S, V. În cazul în care o deplasare îl trimite în afara mesei, robotul este teleportat în capătul celălalt al mesei, pe aceeași linie sau aceeași coloană, permițându-i ulterior să își continue traseul.
Cerința
Scrieți un program care determină poziția finală a robotului după ce a terminat de parcurs traseul dat.
Date de intrare
Fișierul de intrare traseu2.in conține pe prima linie două numere naturale l și c ce reprezintă linia și coloana poziției de start a robotului.
Pe a doua linie se găsesc 3 numere naturale n, m și x, reprezentând numărul de linii și numărul de coloane ce alcătuiesc masa și numărul de mișcări pe care robotul le va face.
Următoarele x linii se vor găsi două elemente, de forma D k, unde D reprezintă direcția mișcării, redată printr-un caracter (unul dintre N, E, S, V) și k reprezintă un număr natural, reprezentând câte pătrățele sunt parcurse în acea direcție.
Date de ieșire
Fișierul de ieșire traseu2.out va conține două numere naturale X și Y, reprezentând linia și coloana unde se află robotul la finalul traseului.
Restricții
- 1 ≤ n, m, x, k ≤ 1000000
- 0 ≤ l, c, X, Y < 1000000
- l ≤ n și c ≤ m
- Caracterul D poate avea ca valori doar N, E, S, V (majuscule)
- Colțul stânga jos al mesei este definit de coordonatele (0,0)
Exemplu 1
| traseu2.in | traseu2.out |
|---|---|
| 0 0 7 7 4 E 5 N 4 V 2 S 2 |
2 3 |
Explicație
- E 5 (galben): robotul se mișcă 5 pătrățele spre E (dreapta), deci noua poziție este (0,5)
- N 4 (albastru): robotul se mișcă 4 pătrățele spre N (sus), noua poziție este (4,5)
- V 2 (verde): robotul se mișcă 2 pătrățele spre V (stânga), noua poziție este (4,3)
- S 1 (roz): robotul se mișcă 2 pătrățele spre S (jos), noua poziție este (2,3)
Poziția finală a robotulului este (2,3).
Exemplu 2
| traseu2.in | traseu2.out |
|---|---|
| 2 3 7 5 5 E 3 N 5 V 2 V 2 S 3 |
4 2 |
Explicație

- E 3 (galben): robotul se mișcă 3 pătrățele spre E (dreapta). Ar ieși de pe masă, dar se teleporteză la capătul opus, pe aceeași linie. Noua poziție este (2,1)
- N 5 (albastru): robotul se mișcă 5 pătrățele spre N (sus). Ar ieși de pe masă, dar se teleporteză la capătul opus, pe aceeași coloană. Noua poziție este (0,1)
- V 2 (verde): robotul se mișcă 2 pătrățele spre V (stânga). Ar ieși de pe masă, dar se teleporteză la capătul opus, pe aceeași linie. Noua poziție este (0,4)
- V 2 (oranj): robotul se mișcă 2 pătrățele spre V (stânga), noua poziție este (0,2)
- S 3 (mov): robotul se mișcă 3 pătrățele spre S (jos). Ar ieși de pe masă, dar se teleporteză la capătul opus, pe aceeași coloană. Noua poziție este (4,2)
Poziția finală a robotulului este (4,2).

