Cod sursa(job #1179458)
Utilizator | Data | 28 aprilie 2014 19:03:26 | |
---|---|---|---|
Problema | Fractii | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.4 kb |
#include <stdio.h>
long long phi[1000000],S,n,i,j;
FILE*f=fopen("fractii.in","r");
FILE*g=fopen("fractii.out","w");
int main()
{
fscanf(f,"%lld",&n);
for(i=2;i<=n;i++)
phi[i]=i-1;
for(i=2;i<=n/2;i++)
for(j=2*i;j<=n;j+=i)
phi[j]-=phi[i];
for(i=2;i<=n;i++) S+=phi[i];
fprintf(g,"%lld",2*S+1);
fclose(f);
fclose(g);
return 0;
}