ヒープの再構築で行われる交換回数

最初は空のヒープが用意されており、そこに対して q 個のクエリを処理することを求められます。クエリには2種類あります:
  1. add x - ヒープに x を追加する
  1. pop - ヒープの根(ルート)を削除する
各クエリに対して、ヒープが最大ヒープ特性を満たすように再構築を行う際に必要な交換操作の回数を出力してください。
なお、pop を実行する場合、根とヒープの末尾の要素を入れ替える操作も交換回数に含まれます。

入力

最初の行には整数 q (1 ≤ q) が1つ与えられます。
続く q 行にはクエリが1行に1つずつ与えられます。すべての add クエリにおいて、x の絶対値は を超えないことが保証されています。

出力

各クエリに対して、必要な交換回数を1行ずつ出力してください。

入力
出力
7 add 1 add 2 add -3 add 4 pop add -2 pop
0 1 0 2 2 0 2
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue