困難 時間限制:3 s記憶體限制:128 MB

CPE OJ - C001 - Galactic Positioning System

來源代碼:cpeoj
前往提交 ↓

一架太空飛船正在銀河中航行。為了即時且準確地分析飛船目前的位置,定位系統會持續蒐集大量可能的位置數據,並將這些資料傳送至數據分析系統。

由於部分數據可能受到異常訊號或極端值影響,系統使用中位數(Median)作為其中一項定位依據。

數據分析系統會持續接收新的整數資料,而先前收到的資料都會被保留下來。

此外,定位系統有時會送出特殊指令:

HIT

當數據分析系統收到 HIT 時,必須立即計算目前所有已收到數據的中位數,並將結果回傳給定位系統。

HIT 只會要求查詢目前的中位數,不會新增或刪除任何資料。

輸入會持續到 EOF(End of File) 為止。

輸入說明

輸入包含若干行,每行只會是下列其中一種格式:

  • 一個整數 x,表示將一筆新的數據加入分析系統。

  • 字串 HIT,表示查詢目前所有資料的中位數。

輸入直到 EOF 結束。

保證每次出現 HIT 時,系統中至少已存在一筆資料。

限制:

-2000000000 \le x \le 2000000000

整個輸入最多包含 200000 行。

輸出說明

每當讀取到一個 HIT 指令時,輸出目前所有已收到資料的中位數。

每個答案輸出一行,並固定顯示到小數點後一位。

輸入輸出範例

範例 1

範例輸入
5
2
HIT
10
HIT
4
HIT
範例輸出
3.5
5.0
4.5

範例 2

範例輸入
-5
HIT
10
HIT
HIT
-5
HIT
範例輸出
-5.0
2.5
2.5
-5.0

範例 3

範例輸入
2000000000
-2000000000
HIT
2000000000
HIT
-2000000000
HIT
HIT
範例輸出
0.0
2000000000.0
0.0
0.0
開啟討論
開啟紀錄

登入後即可撰寫程式、測試範例及提交解答。

登入