Cod sursa(job #458622)
| Utilizator | Data | 25 mai 2010 17:53:40 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.4 kb |
#include<fstream.h>
long long phi[1000001], n;
void calc()
{
long i, j;
for (i=1; i<=n; i++) phi[i]=i;
for (i=2; i<=n; i++)
if (phi[i]==i)
for (j=i; j<=n; j+=i) phi[j] /=i, phi[j] *= (i-1);
}
int main()
{
long long sum=0, i;
ifstream f("fractii.in");
f>>n;
calc();
for(i=1; i<=n; ++i)
sum+=phi[i];
ofstream g("fractii.out");
g<<sum*2-1;
g.close();
return 0;
}