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: 
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: 
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: 
Hence the output will be 2, 3

### Editorial

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

#### My Submissions:  