Pagini recente » Cod sursa (job #2965818) | Cod sursa (job #2207574) | Cod sursa (job #2431387) | Cod sursa (job #239629) | Cod sursa (job #218738)
Cod sursa(job #218738)
#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;
}