Truy vấn đơn giản

View as PDF

Submit solution

Points: 0.20
Time limit: 1.0s
Memory limit: 62M
Input: stdin
Output: stdout

Authors:
Problem type

Cho một tập hợp ~A~ rỗng và ~Q~ truy vấn, hãy xử lý từng truy vấn theo thứ tự. Mỗi truy vấn thuộc một trong ba dạng sau:

  • ~1~ ~x~: Thêm giá trị vào tập hợp ~A~.

  • ~2~ ~x~ ~k~: Trong các phần tử của ~A~ nhỏ hơn hoặc bằng ~x~, hãy in ra giá trị lớn thứ ~k~. (Giá trị của ~k~ không lớn hơn 5). Nếu có ít hơn ~k~ phần tử trong ~A~ nhỏ hơn hoặc bằng ~x~, in ra ~-1~.

  • ~3~ ~x~ ~k~: Trong các phần tử của ~A~ lớn hơn hoặc bằng ~x~, hãy in ra giá trị nhỏ thứ ~k~. (Giá trị của ~k~ không lớn hơn 5). Nếu có ít hơn ~k~ phần tử trong ~A~ lớn hơn hoặc bằng ~x~, in ra ~-1~.

Input

Dòng đầu tiên chứa số nguyên ~Q~ ~(1 \leq Q \leq 2 \cdot 10^5)~.

~Q~ dòng tiếp theo, mỗi dòng chứa dạng truy vấn tương ứng ~(1 \leq x \leq 10^{18}, 1 \leq k \leq 5)~.

Ouput

Với truy vấn loại ~2, 3~ hãy in ra đáp án tương ứng.

Sample Input

11
1 20
1 10
1 30
1 20
3 15 1
3 15 2
3 15 3
3 15 4
2 100 5
1 1
2 100 5

Sample Output

20
20
30
-1
-1
1

Comments

Please read the guidelines before commenting.


There are no comments at the moment.