为什么WA
查看原帖
为什么WA
676561
albertww楼主2022/10/27 13:57
#include <iostream>
using namespace std;
long long t,n,a[200005],dp[200005]={0},mod=998244353;
long long did(long long a,long long b)
{
	long long res=1;
	while(b)
	{
		if(b&1)
			res=res*a%mod;
		a=a*a%mod; 
		b=b/2;
	}
	return res;
}
int main()
{
	cin >> t;
	for (long long i=1;i<=t;i++)
	{
		long long m=0;
		cin >> n;
		for (long long j=1;j<=n;j++)
		{
			cin >> a[j];
			if (a[j]==0)
				m++;
		}
		long long here=0;
		for (long long j=1;j<=m;j++)
			if (a[j]==0)
				here++;
		dp[m]=0;
		long long x=n*(n-1)/2;
		x=x%mod;
		for (long long j=m-1;j>=here;j--)
		{
			long long k=x*did((m-j)*(m-j)%mod,mod-2);
			dp[j]=dp[j+1]+t;
			dp[j]=dp[j]%mod;
			//cout << t << "  ";
		}
		//cout << m << here << x << dp[here] << " ";
	}
}
2022/10/27 13:57
加载中...