結果
問題 | No.1251 絶対に間違ってはいけない最小化問題 |
ユーザー | roaris |
提出日時 | 2020-11-15 10:59:16 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 150 ms / 2,000 ms |
コード長 | 387 bytes |
コンパイル時間 | 179 ms |
コンパイル使用メモリ | 82,256 KB |
実行使用メモリ | 124,420 KB |
最終ジャッジ日時 | 2024-07-23 01:08:33 |
合計ジャッジ時間 | 15,595 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 42 |
ソースコード
import sys input = sys.stdin.readline N = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) s = sum(B) cnt = [0]*(2*10**6+10) for Ai, Bi in zip(A, B): cnt[Ai+10**6] += Bi acc = 0 for i in range(2*10**6+10): acc += cnt[i] if acc>=s//2+1: x = i-10**6 break fx = sum(Bi*abs(x-Ai) for Ai, Bi in zip(A, B)) print(x, fx)