Pagini recente » Cod sursa (job #575465) | Cod sursa (job #300269)
Cod sursa(job #300269)
#include<fstream.h>
#include<math.h>
#define xx 1000001
ifstream fin("fractii.in");
ofstream fout("fractii.out");
long a[xx],n;
unsigned long long nr;
int main()
{
long x,i,p,pa;
double rad;
fin>>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
{
pa=1;
while(x%p==0)
{
pa*=p;
x/=p;
}
pa/=p;
a[i]=pa*(p-1)*a[x];
}
}
nr=0;
for(i=2;i<=n;i++)
nr+=a[i];
nr=2*nr+1;
fout<<nr<<'\n';
fout.close();
return 0;
}