WA求调[悬赏一关注]
查看原帖
WA求调[悬赏一关注]
567494
Baoziawa_int32768楼主2022/9/30 18:32

RT悬赏一关注

#include<bits/stdc++.h>
using namespace std;
long long n,p,k,s=1,a[5000000+10],sum,ki=1,pre[5000000+10],suf[5000000+10];
long long ksm(long long a,long long b,long long p){
	if(b==0)return 1;
	if(b%2==1){return a*ksm(a,b-1,p)%p;}
	else{
		long long t=ksm(a,b/2,p);
		return t*t%p;
	}
} 
bool isprime(int x){
	for(int i=2;i<=sqrt(x);i++){if(x%i==0)return 0;} 
	return 1;
}
int main(){
	cin>>n>>p>>k;
	pre[0]=1;suf[n+1]=1;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		s*=a[i]%p;
		pre[i]=(pre[i-1]*a[i])%p;
	}
	for(int i=n;i>=1;i--)suf[i]=(suf[i+1]*a[i])%p;
	for(int i=1;i<=n;i++){
		ki*=k%p;
		ki%=p;
		sum+=(ki*pre[n-1]*suf[n+1])%p;
	}
	cout<<(sum*ksm(s,p-2,p))%p;
}
 
2022/9/30 18:32
加载中...