Nope

include<bits/stdc++.h>

using namespace std;
typedef long long ll;
inline int read()
{
int out=0,fh=1;
char jp=getchar();
while ((jp>'9'||jp<'0')&&jp!='-')
jp=getchar();
if (jp=='-')
fh=-1,jp=getchar();
while (jp>='0'&&jp<='9')
out=out10+jp-'0',jp=getchar();
return out
fh;
}
typedef __int128 N;
const int P=998244353;
int add(int a,int b)
{
return (a+b>=P)?(a+b-P):(a+b);
}
int mul(int a,int b)
{
return 1LL * a * b % P;
}
int fpow(int a,int b)
{
int res=1;
while(b)
{
if(b&1)
res=mul(res,a);
a=mul(a,a);
b>>=1;
}
return res;
}
const int inf=1e9;
const int MAXN=102;
int n,m,x,y,z,a[MAXN],mx[MAXN];
N C[MAXN][MAXN],s[MAXN][MAXN];
int main()
{
n=read(),x=read(),y=read(),z=read();
for(int i=1;i<=n;++i)
{
a[i]=read();
m+=a[i];
}
for(int i=0;i<=m;++i)
C[i][0]=1;
for(int i=1;i<=m;++i)
for(int j=1;j<=i;++j)
C[i][j]=C[i-1][j-1]+C[i-1][j-1];
for(int c=1;c<=n;++c)
{
for(int k=0;k<=a[c] && k<=x;++k)
{
int p=m-k,f=k-z,q=a[c]-k;//ºóÃæÒ»¹²ÓÐ p ¸öÊý, q ¸ö c,×î¶àÓÐ f ¸ö c
for(int g=0;g<=f && g<=k && g<=y;++g)
s[c][k]+=C[q][g]*C[p-q][y-g],mx[c];
if(s[c][k])
mx[c]=k;
}
}
for(int c=1;c<=n;++c)
for(int k=0;k<=mx[c];++k)
{
int tmp=
}
return 0;
}

Guess you like

Origin www.cnblogs.com/jklover/p/11615540.html