結果
| 問題 |
No.2625 Bouns Ai
|
| コンテスト | |
| ユーザー |
PNJ
|
| 提出日時 | 2024-02-09 22:27:23 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 812 bytes |
| コンパイル時間 | 156 ms |
| コンパイル使用メモリ | 82,360 KB |
| 実行使用メモリ | 229,108 KB |
| 最終ジャッジ日時 | 2024-09-28 15:41:48 |
| 合計ジャッジ時間 | 14,749 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 14 WA * 9 |
ソースコード
def Map():
return list(map(int,input().split()))
mod = 998244353
N = int(input())
A = Map()
S = 10**5
if N == 1:
print(S + 1 - A[0])
exit()
dp = [[0 for j in range(S + 1)] for i in range(N)]
for s in range(S + 1):
if s + A[0] > S:
break
dp[0][s] += 1
for n in range(N-1):
d = 0
if A[n] - A[n+1] > 0:
d += A[n] - A[n+1]
for s in range(S+1):
if n > 0 and s < S:
dp[n][s+1] += dp[n][s]
dp[n][s+1] %= mod
for s in range(S+1):
if s + d > S:
break
ss = s + d
sss = S - A[n+1] + 1
if ss >= sss:
break
dp[n+1][ss] += dp[n][s]
dp[n+1][ss] %= mod
if sss <= S:
dp[n+1][sss] -= dp[n][s]
dp[n+1][sss] %= mod
ans = 0
for s in range(S):
dp[N-1][s+1] += dp[N-1][s]
dp[N-1][s+1] %= mod
ans += dp[N-1][s]
ans %= mod
print(ans)
PNJ