Cod sursa(job #283942)

Utilizator devianceAnusca Andrei deviance Data 20 martie 2009 20:10:14
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<fstream.h>  
#include<math.h>  
long a[1000001],n,i,ii,j,x,y,p,m,ok;
long long nr,rad;  
int main()  
{  
ifstream f("fractii.in");  
ofstream g("fractii.out");  
f>>n;  
a[1]=1;  
for(i=2;i<=n;i++)  
 {x=i;  
 p=2;  
rad=sqrt(x);  
while(p<=rad && x%p)p++;  
 if(p>rad)a[i]=i-1;  

 else  
 {  
 y=1;  
while(x%p==0){y=y*p;  
  x=x/p;  
  }  
 y=y/p;  
 a[i]=(p-1)*y*a[x];  
 }  
   
 }  
  nr=1;  
 for(i=2;i<=n;i++)  
   nr=nr+2*a[i];  
   g<<nr;  
  g.close();  
    return 0;  
}