88. 新阿姆斯特朗炫風噴射阿姆斯特朗棧

0 Judge

Code: 0


題目敘述

這不是「新阿姆斯特朗炫風噴射阿姆斯特朗棧」嗎?還原度真高阿!

它是能把TOI入營考AC掉的決戰資料結構。

別名「奔馳的使塔客」它可是在2019 IONCAMP 中引發「七十分鐘MLE」慘劇的地獄般資料結構呢。

在行星翠山和卡鄉的星際戰爭中,和帶領著翠山勝利的美索多佇列不一樣,而是一直都被鎖在倉庫裡的可憐資結。


一個新阿姆斯特朗炫風噴射阿姆斯特朗棧支援下列操作的資料結構:

  • push x: 把一個整數 $x$ 放進去
  • top: 回傳最晚放進去的整數
  • pop: 移除最晚放進去的整數
  • maxElement: 回傳結構中最大整數
  • popMax: 移除結構中最大的整數,如果有多個最大值,則移除最晚放進去的那一個
  • minElement: 回傳結構中最小整數
  • popMin: 移除結構中最小整數,如果有多個最小值,則移除最晚放進去的那一個

給定一系列的操作,請在遇到top, maxElement, minElement的時候輸出對應的值。

輸入

第一行包含一個整數 $T (1 \leq T \leq 10)$,表示測資有$T$筆輸入。

每筆輸入的第一行包含一個整數$n(1 \leq n \leq 10^6)$,接下來的$n$行為一系列的操作,每行操作的格式如題目敘述所示。

保證遇到push以外的操作時,新阿姆斯特朗炫風噴射阿姆斯特朗棧不是空的。

輸出

對於每筆輸入,請先輸出一行Case #i:,其中$i$為輸入編號(從$1$開始算起)。

遇到top, maxElement, minElement等操作時,請輸出所求並換行。

範例輸入

2
12
push 100
push 3
top
maxElement
push 5
minElement
push 3
popMin
popMin
minElement
pop
top
11
push 10
push 1
push 10
push 2
push 10
push 3
top 
popMax
top
pop
top

範例輸出

Case #1:
3
100
3
5
100
Case #2:
3
3
2

測資限制

測資 說明 配分
$n \leq 100$,包含所有操作
操作僅包含push, pop, top, maxElement
操作僅包含push, pop, top, maxElement, popMax
操作僅包含push, pop, top, maxElement, popMax, minElement
無額外限制

Judge Setting

run-time limit: 10000 ms
memory limit: 536870912 byte
測資數量: 5