- محدودیت زمان: ۲ ثانیه
 - محدودیت حافظه: ۲۵۶ مگابایت
 
داده ساختار صف اولویت میانه شامل $n$ عنصر مجزاست که اعمال زیر را میتوان روی آن انجام داد:
- درج یک عنصر و حذف میانه، در بدترین حالت در $O(log ,n)$
 - ساخت یک صف اولویت میانه 
MPQاز $n$ عنصر در زمان $O(log ,n)$ 
ورودی
در خط اول عدد $k$ که نشاندهنده تعداد دستورهایی است که شما باید اجرا کنید میآید. در $k$ سطر بعد، $k$ دستور داده میشود که دستور $build$ لزوما در خط اول داده خواهد شد. دستورات ممکن به شرح زیر هستند:
- دستور $build(x_1,x_2,\cdots,x_m)$ : یک 
MPQاز اعداد $x_1$ تا $x_m$ در زمان $O(n)$ میسازد. (برای بدست آوردن میانه این اعداد میتوانید $O(n ,log, n)$ زمان هزینه کنید و این جزء مراحل ساختMPQبه حساب نمیآید.) - دستور $insert(x)$ : عدد $x$ را در $O(log ,n)$ در 
MPQدرج میکند. - دستور $remove$ : میانه را در $O(log ,n)$ از 
MPQحذف میکند.(اگر تعداد عناصر زوج باشد، عنصر $\frac{n}{2}$امین در لیست مرتب عناصر را میانه درنظر بگیرید) 
$$1 \leq t \leq 10^5$$ $$10^{-9} \leq x_i \leq 10^9$$
خروجی
شما باید به تعداد دستورهای $remove$ در ورودی، عدد حاصل از فراخوانی این تابع را در خروجی چاپ کنید. فرض کنید تعداد خروجیهایی که یک برنامه چاپ میکند بیشتر از $5 \times 10^6$ نخواهد بود.
مثال
ورودی نمونه
6
build(1,2,3,4,5)
remove
remove
insert(7)
insert(9)
remove
خروجی نمونه
3
2
5
ارسال پاسخ برای این سؤال