結果

問題 No.1457 ツブ消ししとるなHard
ユーザー convexineqconvexineq
提出日時 2021-05-05 21:13:16
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 122 ms / 2,000 ms
コード長 434 bytes
コンパイル時間 210 ms
コンパイル使用メモリ 82,292 KB
実行使用メモリ 83,380 KB
最終ジャッジ日時 2024-09-13 14:05:58
合計ジャッジ時間 2,106 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 43 ms
54,916 KB
testcase_01 AC 42 ms
54,608 KB
testcase_02 AC 42 ms
53,664 KB
testcase_03 AC 44 ms
54,124 KB
testcase_04 AC 49 ms
61,692 KB
testcase_05 AC 49 ms
61,500 KB
testcase_06 AC 122 ms
83,380 KB
testcase_07 AC 43 ms
54,592 KB
testcase_08 AC 42 ms
55,076 KB
testcase_09 AC 51 ms
62,564 KB
testcase_10 AC 49 ms
61,320 KB
testcase_11 AC 43 ms
54,668 KB
testcase_12 AC 66 ms
69,904 KB
testcase_13 AC 56 ms
64,100 KB
testcase_14 AC 55 ms
63,992 KB
testcase_15 AC 54 ms
64,020 KB
testcase_16 AC 44 ms
54,408 KB
testcase_17 AC 49 ms
61,848 KB
testcase_18 AC 44 ms
54,580 KB
testcase_19 AC 56 ms
65,232 KB
testcase_20 AC 42 ms
54,136 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

n,m,x,y,z = map(int,input().split())
*a, = map(int,input().split())
from collections import defaultdict
dp = defaultdict(int)
dp[(0,0)] = 1
V = C = 0
for ai in a:
    if ai >= x:
        V += ai-z
        C += 1
    elif ai > y:
        ndp = dp.copy()
        for (v,c),r in dp.items():
            ndp[(v+ai-z,c+1)] += r
        dp = ndp
print(sum(dp[(-V,i)] for i in range(m+1-C)) - (1 if C==0 else 0) if C <= m else "Handicapped")
0