結果
問題 | No.1251 絶対に間違ってはいけない最小化問題 |
ユーザー | norioc |
提出日時 | 2024-06-21 01:17:42 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 378 ms / 2,000 ms |
コード長 | 545 bytes |
コンパイル時間 | 385 ms |
コンパイル使用メモリ | 82,396 KB |
実行使用メモリ | 110,000 KB |
最終ジャッジ日時 | 2024-06-21 01:18:06 |
合計ジャッジ時間 | 22,825 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 38 ms
54,104 KB |
testcase_01 | AC | 38 ms
53,036 KB |
testcase_02 | AC | 46 ms
58,920 KB |
testcase_03 | AC | 49 ms
58,484 KB |
testcase_04 | AC | 50 ms
59,900 KB |
testcase_05 | AC | 52 ms
59,504 KB |
testcase_06 | AC | 50 ms
58,856 KB |
testcase_07 | AC | 51 ms
59,696 KB |
testcase_08 | AC | 51 ms
59,200 KB |
testcase_09 | AC | 51 ms
59,068 KB |
testcase_10 | AC | 46 ms
58,920 KB |
testcase_11 | AC | 48 ms
59,476 KB |
testcase_12 | AC | 46 ms
59,124 KB |
testcase_13 | AC | 44 ms
58,716 KB |
testcase_14 | AC | 44 ms
59,724 KB |
testcase_15 | AC | 47 ms
58,488 KB |
testcase_16 | AC | 51 ms
58,860 KB |
testcase_17 | AC | 47 ms
58,920 KB |
testcase_18 | AC | 344 ms
109,692 KB |
testcase_19 | AC | 333 ms
105,264 KB |
testcase_20 | AC | 213 ms
103,296 KB |
testcase_21 | AC | 73 ms
69,996 KB |
testcase_22 | AC | 228 ms
104,256 KB |
testcase_23 | AC | 65 ms
68,308 KB |
testcase_24 | AC | 280 ms
103,688 KB |
testcase_25 | AC | 221 ms
103,940 KB |
testcase_26 | AC | 110 ms
79,936 KB |
testcase_27 | AC | 65 ms
67,236 KB |
testcase_28 | AC | 345 ms
109,616 KB |
testcase_29 | AC | 350 ms
109,424 KB |
testcase_30 | AC | 346 ms
109,596 KB |
testcase_31 | AC | 345 ms
109,564 KB |
testcase_32 | AC | 366 ms
109,480 KB |
testcase_33 | AC | 350 ms
109,744 KB |
testcase_34 | AC | 353 ms
109,236 KB |
testcase_35 | AC | 369 ms
110,000 KB |
testcase_36 | AC | 348 ms
109,300 KB |
testcase_37 | AC | 369 ms
109,592 KB |
testcase_38 | AC | 366 ms
109,744 KB |
testcase_39 | AC | 349 ms
109,480 KB |
testcase_40 | AC | 378 ms
109,596 KB |
testcase_41 | AC | 362 ms
109,876 KB |
testcase_42 | AC | 351 ms
109,472 KB |
testcase_43 | AC | 46 ms
52,532 KB |
testcase_44 | AC | 50 ms
59,000 KB |
ソースコード
def ternary_search(f, lo, hi) -> float: l = lo r = hi for _ in range(100): c1 = (l * 2 + r) / 3 c2 = (l + r * 2) / 3 if f(c1) > f(c2): l = c1 else: r = c2 return l N = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) def f(x): res = 0 for a, b in zip(A, B): res += b * abs(x - a) return res lo = min(A) hi = max(A) x = int(ternary_search(f, lo, hi)) v, x = min([(f(i), i) for i in [x-1, x, x+1]]) print(x, v)