結果

問題 No.1645 AB's abs
ユーザー tktk_snsntktk_snsn
提出日時 2021-08-13 21:30:47
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 69 ms / 2,000 ms
コード長 400 bytes
コンパイル時間 208 ms
コンパイル使用メモリ 82,044 KB
実行使用メモリ 81,184 KB
最終ジャッジ日時 2024-10-03 17:19:56
合計ジャッジ時間 3,689 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 36
権限があれば一括ダウンロードができます

ソースコード

diff #

mod = 998244353
U = 100 * 100 * 2 + 10

N = int(input())
A = list(map(int, input().split()))
S = 0

dp = [0] * U
dp[0] = 1
for a in A:
    ndp = [0] * U
    for i in range(-S, S+1):
        ndp[i + a] += dp[i]
        ndp[i - a] += dp[i]
        ndp[i + a] %= mod
        ndp[i - a] %= mod
    S += a
    dp = ndp

ans = 0
for i in range(-S, S+1):
    ans += abs(i) * dp[i]
    ans %= mod
print(ans)
0