Cod sursa(job #285538)

Utilizator ghitzZzaGheorghita Hurmuz ghitzZza Data 22 martie 2009 18:15:06
Problema Fractii Scor 100
Compilator cpp Status done
Runda petru_toti Marime 0.84 kb
#include <fstream.h>         
#include <math.h>         
int main ()         
{ long v[1000001],p,e,y,n,z,i,j,x,nrf;         
long long nr,rad;         
ifstream f("fractii.in");         
ofstream g("fractii.out");         
f>>n;         
v[1]=1;         
        
for (i=2;i<=n;i++)         
 { x=i;         
   p=2;         
   z=1;         
   rad=sqrt(x);         
   while (p<=rad && x%p>=1) p++;         
   if (p>rad) v[i]=i-1;         
    else {         
     y=x;         
     e=0;         
    while (y%p==0)         
       { y/=p;         
     e++;         
     z=z*p;         
       }         
   z=z/p;         
  v[x]=v[y]*(p-1)*z;         
  }}         
nr=1;         
for (i=2;i<=n;i++)         
 nr=nr+2*v[i];         
g<<nr;         
f.close();         
g.close();         
return 0;         
}