Într-o minunată zi de primăvară, răţuşte au ieşit la plimbare pe lac. Un pelican milităros, care stătea pe mal, a decis să facă instrucţie cu nevinovatele raţe. Pentru aceasta, a cartografiat imediat lacul şi l-a reprezentat ca o matrice cu N linii (numerotate de la la de sus în jos) şi coloane (numerotate de la la de la stânga la dreapta). Astfel, poziţia oricărei raţe pe lac poate fi identificată prin linia şi coloana pe care se află raţa. Raţele sunt orientate cu faţa spre una dintre direcţiile Nord, Sud, Est, Vest. Pelicanul a codificat direcţiile , , , ca în figură.
Când pelicanul strigă: “Comanda la mine!” raţele trebuie să execute simultan cele K comenzi pe care le dă pelicanul. Comenzile pelicanului sunt codificate astfel:
- – Raţa avansează cu poziţii în direcţia spre care este orientată. Dacă avansând depăşeşte marginea tablei de joc va intra pe latura opusă. De exemplu, pe un lac x , o raţă plasată în poziţia () cu orientare (Nord), executând comanda se va deplasa astfel: () () () ().
- – Raţa se roteşte cu în sens orar, unde . De exemplu, dacă orientarea iniţială a raţei este (Nord), comanda va schimba orientarea spre (Sud).
- – Raţa zboară pe linia şi coloana mod , păstrând orientarea. Se garantează că . De exemplu, pe un lac x , după executarea comenzii , raţa va ajunge pe linia şi coloana .
Cerință
Scrieţi un program care, cunoscând poziţia iniţială pe lac a celor raţe şi succesiunea comenzilor pelicanului, determină poziţia finală a fiecărei raţe.
Date de intrare
Fișierul de intrare pelican.in
conţine pe prima linie trei numere naturale , cu semnificaţia din enunţ. Pe următoarele linii sunt date câte numere naturale cu semnificaţia că pe linia şi coloana se găseşte o raţă orientată în direcţia . Ultimele linii conţin cele comenzi, câte o comandă pe o linie, în formatul specificat în enunţ (un caracter din mulţimea {'A', 'R', 'Z'} şi un număr natural). Valorile scrise pe aceeaşi linie sunt separate de câte un spaţiu.
Date de ieșire
Fișierul de ieșire pelican.out
va conţine linii. Pe linia va fi scrisă poziţia celei de a -a raţe din fişierul de intrare (linia şi coloana separate printr-un singur spaţiu) după executarea în ordine a celor comenzi.
Restricții și precizări
- ;
- ;
- ;
- ; şi ;
- Mai multe raţe pot ocupa aceeaşi poziţie.
- Se garantează că datele din fişierul de intrare sunt corecte.
- Pentru teste valorând de puncte fişierul de intrare nu conţine comanda .
- Pentru teste valorând de puncte , şi .
- Pentru teste valorând de puncte , ; şi .
Exemplu
pelican.in
5 3 4
1 1 2
2 3 1
3 1 4
A 3
R 3
A 1
A 3
pelican.out
2 4
4 4
2 3
Explicație
Lacul are linii şi coloane. Pe lac există raţe poziţionate ca în figură.
Pelicanul dă comenzi pe care toate cele raţe le execută în ordine. Raţele execută comanda
Raţele execută comanda (se rotesc cu în sens orar)
Raţele execută comanda
Raţele execută comanda