Cod sursa(job #53915)

Utilizator vicenzo_cnuStan Alexandru Dan vicenzo_cnu Data 23 aprilie 2007 18:29:54
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include<stdio.h>
#define Maxn 1000005
#define Maxp 1000005
long n,q,b[Maxp];
long long a[Maxn],s;
FILE *f,*g;

void prim()
{long i,j;
for(i=2;i<=n;i++)
{a[i]=i;
for(j=1;b[j]<=i/2&&j<=q;j++)
if(i%b[j]==0)
{a[i]/=b[j];
a[i]*=b[j]-1;}
if(a[i]==i)
{q++;
a[i]--;
b[q]=i;}
s+=a[i];}

}

int main()
{f=fopen("fractii.in","r");
g=fopen("fractii.out","w");
fscanf(f,"%ld",&n);
prim();
long i;
fprintf(g,"%lld\n",2*s+1);
fclose(f);
fclose(g);
return 0;}