1757 - query operation 2
問題
空集合$A$と$Q$個のクエリが与えられるので順に処理してください。
・クエリ0 : 数列$A$の末尾に$X$を挿入する
・クエリ1 : 数列$A$の中から$X$を1つ削除する(削除する場所は任意)
・クエリ2 : 数列$A$の中で$X$以上$Y$以下の個数を出力する
・クエリ3 : 数列$A$の中で$X$番目に小さい数を出力する
入力
入力は以下の形式で標準入力から与えられる。
$Q$ $Query_1$ $Query_2$ : $Query_Q$各クエリは以下のいずれかの形式で与えられる。
$0$ $X$
$1$ $X$
$2$ $X$ $Y$
$3$ $X$
出力
クエリ2,3についての答えを改行区切りで出力せよ。
制約
最初数列$A$は空集合である。$1 \leq X,Y,Q \leq 10^{5}$
$X \leq Y$
クエリ1が与えられたとき、必ず削除できる。クエリ3が与えられたとき、必ず解が存在する。
入出力例
入力例1
4 0 1 0 2 0 3 2 1 3
出力例1
3
3つ目のクエリ終了時に数列$A$は{$1,2,3$}であり、$1$以上$3$以下は3個です。
入力例2
1 2 0 100000
出力例2
0
数列$A$は空集合なので$0$以上$100000$以下の数は0個です。
入力例3
10 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 3 4
出力例3
1
数列$A$は{$1,1,1,1,1,1,1,1,1$}なので$4$番目に大きい数字は1です。
入力例4
7 0 1 0 3 3 1 1 3 0 2 2 1 3 3 2
出力例4
1 2 2
2つ目のクエリ終了時は数列$A$={$1,3$}なので1番目に大きい数は$1$です。
5つ目のクエリ終了時は数列$A$={$1,2$}なので$1$以上$3$以下の個数は$2$個、2番目に大きい数は$2$です。