結果
問題 | No.2329 Nafmo、イカサマをする |
ユーザー |
![]() |
提出日時 | 2023-05-01 10:33:13 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 283 ms / 2,000 ms |
コード長 | 515 bytes |
コンパイル時間 | 148 ms |
コンパイル使用メモリ | 82,568 KB |
実行使用メモリ | 142,108 KB |
最終ジャッジ日時 | 2024-11-20 10:17:58 |
合計ジャッジ時間 | 3,971 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 40 |
ソースコード
import bisect n, m, k = map(int, input().split()) a = list(map(int, input().split())) + [0] l = set() r = set() for vi in a: for vj in a: for vk in a: if k < 5: vk = 0 if k < 3: vj = 0 l.add(vi+vj+vk) if k < 6: vk = 0 if k < 4: vj = 0 if k < 2: vi = 0 r.add(vi+vj+vk) l = sorted(list(l)) r = sorted(list(r)) ans = 0 for v in l: if v > m: break idx = bisect.bisect_right(r, m-v) - 1 ans = max(ans, v+r[idx]) print(ans)