Cod sursa(job #705610)
Utilizator | Data | 4 martie 2012 17:39:04 | |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include<stdio.h>
int main()
{
FILE *fin,*fout;
long n,i,j,s=0;
long v[1000001];
fin=fopen("fractii.in","rt");
fscanf(fin,"%ld",&n);
fclose(fin);
for(i=1;i<=n;i++)
v[i]=i;
for(i=2;i<=n;i++)
if(v[i]==i)
for(j=i;j<=n;j+=i)
{
v[j]=v[j]/i;
v[j]=v[j]*(i-1);
}
for(i=1;i<=n;i++)
s+=v[i];
fout=fopen("fractii.out","wt");
fprintf(fout,"%ld",2*s-1);
fclose(fout);
return 0;
}