結果
| 問題 |
No.1825 Except One
|
| コンテスト | |
| ユーザー |
kozy
|
| 提出日時 | 2022-01-28 21:56:54 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
MLE
|
| 実行時間 | - |
| コード長 | 670 bytes |
| コンパイル時間 | 315 ms |
| コンパイル使用メモリ | 82,176 KB |
| 実行使用メモリ | 1,437,012 KB |
| 最終ジャッジ日時 | 2024-12-30 06:35:55 |
| 合計ジャッジ時間 | 40,297 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 MLE * 1 |
| other | AC * 18 TLE * 3 MLE * 10 |
ソースコード
N=int(input())
A=list(map(int,input().split()))
dp=[[[[0]*(sum(A)+1) for i in range(max(A)+1)] for k in range(N+1)] for s in range(N)]
dp[0][1][A[0]][A[0]]=1
dp[0][0][0][0]=1
mm=max(A)
ss=sum(A)
ans=0
for i in range(1,N):
for j in range(N+1):
for s in range(ss+1):
if s>=A[i] and j>=1:
for d in range(A[i]+1):
dp[i][j][A[i]][s]+=dp[i-1][j-1][d][s-A[i]]
for d in range(A[i]+1,mm+1):
dp[i][j][d][s]+=dp[i-1][j-1][d][s-A[i]]
for k in range(mm+1):
dp[i][j][k][s]+=dp[i-1][j][k][s]
if i==N-1 and j>=2:
if (s%(j-1)==0 and k<=s//(j-1)):
ans+=dp[i][j][k][s]
print(ans)
kozy