蒟蒻WA on #5,#11,求条
查看原帖
蒟蒻WA on #5,#11,求条
1373205
dg114514楼主2024/10/3 13:03

rt,

#include<bits/stdc++.h>
using namespace std;
int phi(int x){ 
    int ans=x,sq=sqrt(x);  
    for(int i=2;i<=sq;++i)  
        if(x%i==0){  
            ans=ans-ans/i;  
            while(x%i==0)
				x/=i;   
        }  
    if(x>1)
		ans=ans-ans/x;  
    return ans;  
} 
int main(){  
    int n;
    cin>>n;
    int ans=0,sq=sqrt(n);  
    for(int i=1;i<=sq;++i)  
      	if(n%i==0)
		  	ans+=i*phi(n/i)+n/i*phi(i);   
    if(sq*sq==n) ans-=sq*phi(sq);  
    cout<<ans;
    return 0;  
}
2024/10/3 13:03
加载中...