Atenție! Aceasta este o versiune veche a paginii., scrisă la 2026-05-19 18:43:52.234.
Revizia anterioară   Revizia următoare  

Fișierul intrare/ieșire izistack.in, izistack.out Sursă ad-hoc
Autor Florian Ușurelu Adăugată de avatar vmanz Victor Manz vmanz
Timp de execuție pe test 0.5 sec Limită de memorie 5120 KB
Scorul tău N/A Dificultate N/A
open book Poți vedea testele pentru această problemă accesând atașamentele .

IziStack

Se dă o stivă goaă. Elementele stivei sunt numerotate începând cu 1 de la bază înspre vârf. Avem de procesat T comenzi de tipurile:

  • 0 x – elementul x se va adăuga în vârful stivei
  • 1 x y add – tuturor elementelor din intervalul x\ y le va fi adăugată valoarea add
  • 2 – eliminarea elementului din vârf

Afișați după fiecare operație elementul din vârful stivei.
Se garantează:

  • că nu se va efectua operația de tip 2, dacă nu exista cel puțin 2 elemente în stivă
  • că prima operație va fi de tip 0

Date de intrare

Fișierul de intrare izi.in conține pe prima linie un număr natural T, iar pe următoarele T linii, operațiile efetuate asupra stivei.

Date de ieșire

Fișierul de iesire izi.out conține T linii, reprezentând elementele din vârful stivei după fiecare operație.

Restricții

  • 1 ≤ T ≤ 1 000 000
  • 1 000 ≤ add ≤ 1 000
  • Pentru operațiile de tip 1, −1 000 \leq x \leq 1 000, iar pentru operațiile de tip 2, numărul elementelor aflate în stivă este mai mare ca y.

Exemplu

izistack.in izistack.out
This is some
text written on
multiple lines.
This is another
text written on
multiple lines.

Explicație

...

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