只AC了#15,求调
查看原帖
只AC了#15,求调
765351
zhuyiming1011楼主2025/1/2 14:32
#include<bits/stdc++.h>
using namespace std;
int qp(int a,int b){
	int s=1,p=9901;
	while(b>0){
		if(b%2==1){
			s=(s*a)%p;
		}
		a=a*a%p;
		b/=2;
	}
	return s;
}
int n,m,k;
int a[50000005],b[1000005];
int main(){
	cin>>n>>m;
	for(int i=2;i*i<=n;i++){
		if(n%i==0){
			b[++k]=i;
			while(n%i==0){
				a[i]++;
				n/=i;
			}
		}
	}
	int ans=1;
	if(n>1) a[n]=1,b[++k]=n;
	for(int i=1;i<=k;i++){
		a[b[i]]*=m;
		int h=qp(b[i],a[b[i]]+1)-1;
		h/=b[i]-1;
		h=(9901+h)%9901;
		ans=(ans*h)%9901;
	}
	cout<<ans;
	return 0;
}

记录

2025/1/2 14:32
加载中...