結果
問題 | No.545 ママの大事な二人の子供 |
ユーザー |
![]() |
提出日時 | 2020-12-24 00:32:04 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 104 ms / 2,000 ms |
コード長 | 490 bytes |
コンパイル時間 | 139 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 79,744 KB |
最終ジャッジ日時 | 2024-09-21 16:38:29 |
合計ジャッジ時間 | 2,950 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 32 |
ソースコード
import bisect from itertools import product n = int(input()) m = n // 2 AB = tuple(tuple(map(int, input().split())) for _ in range(n)) A, _ = zip(*AB) sumA = sum(A) X = [0] Y = [0] for a, b in AB[:m]: X.extend([x+a+b for x in X]) for a, b in AB[m:]: Y.extend([y+a+b for y in Y]) Y.sort() ans = 10**18 for x in X: T = sumA - x i = bisect.bisect_left(Y, T) for j in range(-3, 4): if 0 <= i + j < len(Y): ans = min(ans, abs(T - Y[i + j])) print(ans)