比赛 Asm_Def战记之透明计算网络 评测结果 EAAAWWWWWW
题目名称 Asm_Def排兵布阵 最终得分 30
用户昵称 WAHT 运行时间 0.096 s
代码语言 C++ 内存使用 1.04 MiB
提交时间 2015-11-01 11:56:14
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<iomanip>
using namespace std;
#define ll long long
const ll mod=998244353;
ll read()
{
	int x=0;
	char ch=getchar();
	while(ch>'9'||ch<'0'){ch=getchar();}
	while(ch<='9'&&ch>='0'){ x=x*10+ch-'0';	ch=getchar();}
	
	return x;
}

int n;
ll num[110000],ans=1,sum,a=1;
int main()
{
	freopen("asm_formation.in","r",stdin);
	freopen("asm_formation.out","w",stdout);
	n=read();
	for(int i=1;i<=n;i++) num[i]=read();
	sum=num[1];
	for(ll i=1;i<=num[1];i++)
		a*=num[i];
	for(int i=2;i<=n;i++)
	{
		ll now=1;
		for(ll j=2;j<num[i];j++)
			now*=j,now%=mod;
		ll b=a*now%mod;
		for(ll j=sum+1;j<sum+num[i];j++)
			a*=j,a%=mod;
		ans=(ans*a/b)%mod;
		sum+=num[i];
	}

	cout<<ans<<endl;	
	return 0;
}