QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#614315 | #9443. Left Equals Right | ucup-team3659# | WA | 0ms | 4172kb | C++20 | 751b | 2024-10-05 16:09:38 | 2024-10-05 16:09:39 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int mod=998244353;
int pw(int a,int b)
{
int ans=1;
while(b)
{
if(b&1)
ans=1ll*ans*a%mod;
a=1ll*a*a%mod;
b>>=1;
}
return ans;
}
int a[105];
int dp[105][5005];
int n;
int fac[105];
signed main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>n;
fac[0]=1;
for(int i=1;i<=n;i++)
fac[i]=fac[i-1]*i%mod;
int s=0;
for(int i=1;i<=n;i++)
cin>>a[i],s+=a[i];
if(s%2)
{
cout<<"0";
return 0;
}
s/=2;
dp[0][0]=1;
for(int i=1;i<=n;i++)
for(int j=i;j>=1;j--)
for(int k=s;k>=a[i];k--)
(dp[j][k]+=dp[j-1][k-a[i]])%=mod;
int ans=0;
for(int i=0;i<=n;i++)
(ans+=dp[i][s]*fac[i]%mod*fac[n-i]%mod)%=mod;
cout<<ans;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3548kb
input:
3 4 9 5
output:
4
result:
ok "4"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3680kb
input:
2 100 100
output:
2
result:
ok "2"
Test #3:
score: 0
Accepted
time: 0ms
memory: 3704kb
input:
8 3 2 6 3 1 2 4 5
output:
11520
result:
ok "11520"
Test #4:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
2 93 93
output:
2
result:
ok "2"
Test #5:
score: 0
Accepted
time: 0ms
memory: 3720kb
input:
2 62 45
output:
0
result:
ok "0"
Test #6:
score: 0
Accepted
time: 0ms
memory: 3664kb
input:
3 32 68 36
output:
4
result:
ok "4"
Test #7:
score: 0
Accepted
time: 0ms
memory: 3544kb
input:
3 27 2 25
output:
4
result:
ok "4"
Test #8:
score: 0
Accepted
time: 0ms
memory: 3704kb
input:
10 38 27 36 88 77 25 73 44 11 21
output:
126720
result:
ok "126720"
Test #9:
score: 0
Accepted
time: 0ms
memory: 3592kb
input:
10 93 78 29 81 14 20 18 71 85 48
output:
0
result:
ok "0"
Test #10:
score: 0
Accepted
time: 0ms
memory: 3768kb
input:
9 57 19 88 13 55 43 27 10 74
output:
5760
result:
ok "5760"
Test #11:
score: 0
Accepted
time: 0ms
memory: 3728kb
input:
10 80 1 44 85 32 85 3 4 80 45
output:
0
result:
ok "0"
Test #12:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
10 56 72 93 39 70 78 3 10 84 48
output:
0
result:
ok "0"
Test #13:
score: 0
Accepted
time: 0ms
memory: 3696kb
input:
10 2 58 36 81 100 85 11 39 24 50
output:
118080
result:
ok "118080"
Test #14:
score: 0
Accepted
time: 0ms
memory: 3708kb
input:
10 70 23 3 26 98 18 63 32 22 25
output:
158400
result:
ok "158400"
Test #15:
score: 0
Accepted
time: 0ms
memory: 3600kb
input:
10 42 92 12 71 85 68 78 89 98 30
output:
0
result:
ok "0"
Test #16:
score: 0
Accepted
time: 0ms
memory: 3676kb
input:
10 26 5 25 35 77 46 81 13 73 32
output:
0
result:
ok "0"
Test #17:
score: 0
Accepted
time: 0ms
memory: 3768kb
input:
10 37 43 7 51 89 86 84 26 28 15
output:
103680
result:
ok "103680"
Test #18:
score: -100
Wrong Answer
time: 0ms
memory: 4172kb
input:
58 84 96 24 20 3 10 27 57 98 49 32 52 67 18 100 6 100 4 4 88 24 77 75 95 18 83 58 75 71 99 18 53 68 65 76 37 51 19 65 63 28 59 84 59 80 73 83 41 96 30 96 5 13 56 92 84 30 72
output:
-363326672
result:
wrong answer 1st words differ - expected: '670239800', found: '-363326672'