WA20pts求调
查看原帖
WA20pts求调
979363
zxr_zwgh楼主2024/7/12 16:49
#include<bits/stdc++.h>
using namespace std;
const long long mod=998244353;
long long x[100005],y[100005],yy[100005];
long long p[100005],fac[100005];
long long quickPower(long long a,long long b){
	long long ans=1,base=a;
	while(b>0){
		if(b&1) ans=ans*base%mod;
        base=base*base%mod;
        a%=mod;
		b>>=1;
	}
	return ans;
}
int main(){
	int n;
	cin>>n;
	fac[0]=1;
	for(int i=1;i<=n;i++){
		cin>>x[i]>>y[i];
	}
	for(int i=1;i<=n;i++){
		yy[i]=quickPower(y[i],mod-2);
		p[i]=x[i]*yy[i]%mod;
		fac[i]=fac[i-1]*(y[i]-x[i])*yy[i]%mod;
	}
	long long a=1,b=0;
	for(int i=1;i<=n;i++){
		if(i<n) a=(a+fac[i])%mod;
		if(i==1) b=(b+(x[1]*yy[1]%mod))%mod;
		else b=(b+(fac[i-1]*x[i]*yy[i]%mod)%mod);
	}
	cout<<(a*quickPower(1-b+mod,mod-2)%mod+mod)%mod;
	return 0;
}

RT,样例过了,感觉是取模的问题,求调

2024/7/12 16:49
加载中...