X

DAYS

:

HOUR

:

MINS

:

SEC

Copied to Clipboard
Geek and Books
Easy Accuracy: 71.73% Submissions: 1241 Points: 2

Geek has several competitive programming books and he wants to place books one on another (like a stack). There are total Q queries of two types.

Type 1: This query is represented by "place x", where x is an integer represents a number of the book geek wants to place on the top of the stack.
Type 2: This query is represented by "remove". After this query, print a book number which is at the top of the stack (If the stack is empty then print -1) and remove it from the stack.

Note: There can be multiple books with the same number.  

Input:
1. The first line of the input contains a single integer T denoting the number of test cases. The description of T test cases follows.
2. The first line of each test case contains a single integer Q.
3. The next Q lines contain queries


Output: For each test case, for each query of type 2, print the top book number of the stack (space separated)

Constraints:
1. 1 <= T <= 100

2. 1 <= Q <= 104
3. 1 <= x <= 109


Example:
Input:

2
5
place 6
place 2
remove
place 3
remove
3
remove
place 5

remove

Output:
2 3
-1 5

Explanation:
Test Case 1: 
First Consider an empty satck: []
1st operation: Geek place a book number 6. So now Stack: [6]
2nd operation: Geek place a book number 2. So now Stack [6,2]
3rd operation: Geek wants to remove book which is top of the stack.
i.e. Book no 2. So now Stack: [6]
4th operation: Geek place a book number 3. So now Stack [6,3]
5th operation: Geek wants to remove book which is top of the stack.
i.e. Book no 3. So now Stack: [6]
Hence the output will be 2, 3

to report an issue on this page.

Editorial

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

Yes

All Submissions

My Submissions:

Login to access your submissions.

Geek and Books

Output Window