找时间把题解补上
//176K 157MS
#include <cstdio>
#include <iostream>
#include <cmath>
using namespace std;
typedef long long ll;
ll F(ll n){
ll m = sqrt(n+0.5);
ll ans = n;
for(ll i=2; i<=m; ++i)
if(n % i == 0){
ll e = 0;
ll p = i;
while(n % p == 0){
n /= p;
e++;
}
ans = ans + ans*e*(p-1)/p;
}
if(n > 1){//一个正整数n,最多只有一个大于sqrt(n)的素因子
ans = ans + ans*(n-1)/n;
}
return ans;
}
int main(){
ll N;
while(scanf("%lld", &N) != EOF){
printf("%lld\n", F(N));
}
return 0;
}