Pagini recente » Cod sursa (job #691936) | Cod sursa (job #2076197) | Cod sursa (job #2039989) | Cod sursa (job #772425) | Cod sursa (job #188890)
Cod sursa(job #188890)
#include<stdio.h>
unsigned long long phi[1000001],i,j,k,sol,n;
int main()
{
freopen("fractii.in","rt",stdin);
freopen("fractii.out","wt",stdout);
scanf("%llu",&n);
phi[1]=1;
for(i=2;;i++)
{ if(!phi[i])
{ phi[i]=i-1;
for(j=i*i;j<=n;j+=i)
{ if(phi[j])continue;
phi[j]=i;
}
}
else
{ j=phi[i]; phi[i]=j-1; k=i/j;
while(k%j==0){phi[i]*=j;k/=j;}
phi[i]*=phi[k];
}
sol+=2*phi[i];
}
return 0;
}