Cod sursa(job #692890)
| Utilizator | Data | 26 februarie 2012 20:36:37 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | c | Status | done |
| Runda | Arhiva de probleme | Marime | 0.33 kb |
#include <stdio.h>
int main () {
long long int n,j,k,i,p[1000000];
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%Ld ",&n);
k=0;
for (i=1;i<=n;i++) p[i]=i;
for (i=2;i<=n;i++)
if (p[i]==i)
for (j=i;j<=n;j+=i) {p[j] /=i;
p[j]*=(i-1);}
for (i=1;i<=n;i++)
k=k+p[i];
printf("%Ld \n",k*2 -1);
return 0;
}
