結果
問題 |
No.1251 絶対に間違ってはいけない最小化問題
|
ユーザー |
![]() |
提出日時 | 2021-11-19 01:14:08 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 657 ms / 2,000 ms |
コード長 | 456 bytes |
コンパイル時間 | 276 ms |
コンパイル使用メモリ | 82,828 KB |
実行使用メモリ | 128,460 KB |
最終ジャッジ日時 | 2024-12-28 03:19:17 |
合計ジャッジ時間 | 25,298 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 42 |
ソースコード
def main(): from sys import stdin import math readline=stdin.readline n = int(readline()) A = list(map(int, readline().split())) B = list(map(int, readline().split())) L = [] ran = list(range(n)) for i in ran: L.append((A[i], B[i])) L.sort() now, f = 0, 0 s = math.floor((sum(B)+1)/2) for i in L: k, v = i now += v if now >= s: x = k break for i in ran: f += B[i]*abs(x-A[i]) print(x, f) main()