Cod sursa(job #121807)
Utilizator | Data | 9 ianuarie 2008 21:29:11 | |
---|---|---|---|
Problema | Fractii | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.31 kb |
#include <stdio.h>
int phi[1000000],n,sol;
int phii(int N) {
int i,j;
for ( i = 1; i <= N; ++i)
phi[i] = i-1;
for ( i = 2; i <= N; ++i)
for ( j = 2*i; j <= N; j += i)
phi[j] -= phi[i];
}
int main() {
fscanf(f,"%lld",&n);
phii(n);
for (i=2;i<=n;i++)
sol+=2*phii[i];
fprintf("%d",sol);
return 0;
}