結果

問題 No.2248 max(C)-min(C)
ユーザー yabit
提出日時 2023-06-30 12:46:35
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 2,847 ms / 3,000 ms
コード長 614 bytes
コンパイル時間 179 ms
コンパイル使用メモリ 82,476 KB
実行使用メモリ 164,892 KB
最終ジャッジ日時 2024-07-07 00:59:48
合計ジャッジ時間 73,423 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 51
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

from copy import deepcopy
import heapq
N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
que = []
for i,(a,b) in enumerate(zip(A,B)):
que.append((a, i))
que.append((b, i))
que.append(((a+b)//2, i))
que2 = deepcopy(que)
que2.sort()
heapq.heapify(que)
ans = 10**18
r = 0
rs = [0]*N
for d, idx in que2:
# print(d,idx,que,ans,rs)
while que and r != N:
e, idy = heapq.heappop(que)
rs[idy] += 1
if rs[idy] == 1:
r += 1
if r == N:
ans = min(ans, e-d)
rs[idx] -= 1
if rs[idx] == 0:
r -= 1
print(ans)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0