Stack Implementation
Implementează o clasă Stiva folosind un ArrayList ca stocare internă. Stiva trebuie să suporte operațiile pune, scoate și varf.
Procesează comenzile de la stdin și afișează rezultatele pentru scoate și varf. Dacă scoate sau varf este apelat pe o stivă goală, afișează Goala.
Date de intrare
- Linia 1: numărul de comenzi N (1 <= N <= 2·10^4)
- Pentru fiecare comandă:
- Linia 1: tipul comenzii (
pune,scoatesauvarf) - Doar pentru
pune, linia 2: numărul întreg X (orice valoare de tipint)
- Linia 1: tipul comenzii (
Comportament:
pune X: pune X pe stivăscoate: elimină și afișează elementul din vârfvarf: afișează elementul din vârf fără a-l elimina
Rezultat
- Pentru fiecare
scoate: valoarea eliminată, sauGoala - Pentru fiecare
varf: valoarea din vârf, sauGoala
Exemple
Intrare:
6
pune
10
pune
20
varf
scoate
scoate
scoate
Ieșire:
20
20
10
Goala
Intrare:
3
pune
5
pune
15
varf
Ieșire:
15
Intrare:
2
scoate
varf
Ieșire:
Goala
Goala
Atât scoate, cât și varf trebuie să afișeze Goala când stiva nu conține nimic.