結果
| 問題 |
No.3298 K-th Slime
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-10-05 16:19:52 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 434 ms / 2,000 ms |
| コード長 | 768 bytes |
| コンパイル時間 | 442 ms |
| コンパイル使用メモリ | 82,164 KB |
| 実行使用メモリ | 98,008 KB |
| 最終ジャッジ日時 | 2025-10-05 16:20:37 |
| 合計ジャッジ時間 | 7,160 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 25 |
ソースコード
import heapq
n,k,q=list(map(int,input().split()))
a=list(map(int,input().split()))
a.sort()
if k==1:
front=[-1]
else:
front=a[:k-1]
front=list(map(lambda x: x*(-1), front))
back=a[k-1:]
heapq.heapify(front)
heapq.heapify(back)
for i in range(q):
f,*x=list(map(int,input().split()))
if f==1:
fro=heapq.heappop(front)*(-1)
if x[0]>=fro:
heapq.heappush(back,x[0])
heapq.heappush(front,fro*(-1))
else:
heapq.heappush(back,fro)
heapq.heappush(front,x[0]*(-1))
if f==2:
y=heapq.heappop(back)
z=x[0]+y
heapq.heappush(back,z)
if f==3:
z=heapq.heappop(back)
print(z)
heapq.heappush(back,z)
# print(front,end="")
# print(back)