WA on #2#3#12求
查看原帖
WA on #2#3#12求
1447599
txh110606楼主2025/7/26 15:30
#include<bits/stdc++.h>
#define int unsigned long long
using namespace std;
const int N=1e7+7;
int n,ans;
int euler_phi(int x)//φ(x)
{
	double ans=(double)x;
	for(int i=2; i*i<=x; ++i)
	{
		if(x%i==0)
			ans*=((double)(i-1)/i);
		while(!(x%i))
			x/=i;
	}
	if(x>1)
		ans*=(double)((x-1.0)/x);
	return (int)ans;
}
signed main()
{
	cin>>n;
	for(int i=1;i*i<=n;++i)
	{
		if(n%i==0)
		{
			ans+=euler_phi(i)*(n/i)+euler_phi(n/i)*i;
		}
	}
	cout<<ans;
	return 0;
}
2025/7/26 15:30
加载中...