Fișierul intrare/ieșire browser.in, browser.out Sursă Testare IQ Academy clasa a 7-a
Autor Radu-Bogdan Priboi | Ștefan Pițur Adăugată de avatar priboiradu cris priboi radu bogdan priboiradu
Timp de execuție pe test 0.1 sec Limită de memorie 1024 KB
Scorul tău N/A Dificultate N/A
open book Poți vedea testele pentru această problemă accesând atașamentele .

Browser (clasa a 7-a)

Ștefan s-a gândit să își facă propriul browser de internet. El are nevoie de ajutorul tău să mențină istoricul căutarilor în cadrul noului browser. Momentan, în browser se admit trei tipuri de operații:

  • “v” x – vizitează o nouă pagină cu ID-ul x. În momentul vizitării unei noi pagini, se va șterge tot istoricul paginilor vizitate după pagina curentă;
  • “b” s – mergi înapoi s pași în istoricul paginilor vizitate; (dacă ajungi la prima pagină din istoric te vei opri acolo)
  • “f” s – avansează s pași în istoricul paginilor vizitate; (dacă ajungi la ultima pagină din istoric te vei opri acolo)

Cerință

Dându-se un număr natural N și o listă de n operații, afișați pentru fiecare operație ID-ul paginii curente, după ce operația a fost executată.

Date de intrare

Fișierul de intrare browser.in conține pe prima linie un număr natural N, apoi urmează N linii, fiecare cu una dintre cele 3 tipuri de operații de mai sus.

Date de ieșire

În fișierul de ieșire browser.out conține N linii, iar pe fiecare linie câte un număr, reprezentând ID-ul paginii curente, pentru fiecare dintre cele N operații.

Restricții

  • 1 ≤ N ≤ 100.000
  • 1 ≤ x, s ≤ 100.000
  • Se garantează că prima operație este de tip “v” (istoricul nu va fi niciodată gol după prima operație)

Exemplu

browser.in browser.out
9
v 1
v 2
v 3
b 1
b 1
f 1
v 4
f 2
b 7
1
2
3
2
1
2
4
4
1

Explicație

După prima operație, istoricul este [1], iar ID-ul curent este 1.
După operația 2, istoricul este [1, 2], iar ID-ul curent este 2.
După operația 3, istoricul este [1, 2, 3], iar ID-ul curent este 3.
După operația 4, istoricul rămâne [1, 2, 3], dar mergem o poziție inapoi în istoric, iar ID-ul curent devine 2.
După operația 5, similar, istoricul este [1, 2, 3], iar ID-ul curent este 1.
După operația 6, istoricul este [1, 2, 3], iar ID-ul curent este 2.
După operația 7, istoricul este [1, 2, 4], iar ID-ul curent este 4. Pagina cu ID-ul 3 se șterge din istoric, întrucât din pagina cu ID-ul 2, vizităm o nouă pagină, cu ID-ul 4.
După operația 8, istoricul este [1, 2, 4], iar ID-ul curent rămâne 4, deoarece nu avem unde să mai avansăm.
După operația 9, istoricul este [1, 2, 4], iar ID-ul curent este 1, deoarece după ce ajungem la ID-ul 1, nu mai putem merge înapoi în istoric.

Trebuie să te autentifici pentru a trimite soluții. Click aici