1 条题解

  • 1
    @ 2022-8-31 9:51:04
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int n,m;
    long long qpower(long long a,int b)
    {
    	long long ans=1;
    	for(;b;b>>=1,a*=a)if(b&1)ans=ans*a;
    	return ans;
    }
    int main()
    {
    	scanf("%d%d",&m,&n);int fac=n;
    	long long ans=1;
    	for(int i=2;i*i<=n;i++)
    	{
    		if(n%i==0)
    		{
    			ans*=qpower(i,m)-1;fac/=i;
    			while(n%i==0)n/=i;
    		}
    	}
    	if(n!=1)ans*=qpower(n,m)-1,fac/=n;
    	ans=ans*qpower(fac,m);
    	cout<<ans<<endl;
    }
    
    • 1

    信息

    ID
    1187
    时间
    1000ms
    内存
    125MiB
    难度
    5
    标签
    递交数
    2
    已通过
    2
    上传者