Cod sursa(job #783758)
Utilizator | Data | 3 septembrie 2012 20:26:40 | |
---|---|---|---|
Problema | Fractii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.34 kb |
#include<iostream>
using namespace std;
unsigned phi(unsigned long x) {
unsigned ret = 1,i,pow;
for (i = 2; x != 1; i++) {
pow = 1;
while (!(x%i)) {
x /= i;
pow *= i;
}
ret *= (pow - (pow/i));
}
return ret;
}
int main()
{
long int n,i,z=1;
cin>>n;
for(i=2;i<=n;i++)
z=z+phi(i)*2;
cout<<z;
return 0;
}