Cod sursa(job #150724)
Utilizator | Mathe Bogdan Zilla | Data | 7 martie 2008 12:04:16 |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.45 kb |
#include <stdio.h>
FILE *f=fopen("fractii.in","r"),*g=fopen("fractii.out","w");
long long unsigned a[1000000],n,i,j,x,s;
int main()
{
fscanf(f,"%llu",&n);
for(i=2;i<=n;++i)
{if(a[i]==0)
s+=i-1;
else s+=a[i];
if(a[i]==0)
for(j=2;i*j<=n;++j)
if(a[i*j]==0)
a[i*j]=(i*j)-j;
else
a[i*j]-=a[i*j]/i;
}
s=s*2+1;
fprintf(g,"%llu",s);
fclose(g);
return 0;
}