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