結果

問題 No.617 Nafmo、買い出しに行く
コンテスト
ユーザー Ryuto
提出日時 2017-12-17 19:20:52
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
TLE  
実行時間 -
コード長 780 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 158 ms
コンパイル使用メモリ 85,292 KB
実行使用メモリ 89,440 KB
最終ジャッジ日時 2026-05-26 05:42:09
合計ジャッジ時間 3,975 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 2
other AC * 2 TLE * 1 -- * 17
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import itertools

indat = [int(x) for x in input().split()]
weights = list()
for i in range(indat[0]):
    x = int(input())
    if x < indat[1]:
        weights.append(x)
    elif x == indat[1]:
        print(x)
        exit()
weights.sort(reverse=True)

use = set()
unuse = set()
ans = 0
for weight in weights:
    if ans + weight == indat[1]:
        print(indat[1])
        exit()
    elif ans + weight > indat[1]:
        unuse.add(weight)
        continue
    else:
        use.add(weight)
        ans += weight

for diff in range(indat[1]-ans, 0, -1):
    for i in range(2, len(unuse)+1):
        for perm in itertools.permutations(weights, i):
            val = sum(perm)
            if val - diff in use:
                print(indat[1])
                exit()

print(ans)
0