Pagini recente » Cod sursa (job #1824825) | Cod sursa (job #1557385) | Cod sursa (job #42435) | Cod sursa (job #1295343) | Cod sursa (job #936158)
Cod sursa(job #936158)
#include<cstdio>
#include<bitset>
using namespace std;
const int NMAX = 1000005;
int n,i,j;
long long phi[NMAX],sol;
bitset<NMAX> viz;
int main()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%d",&n);
for(i=2;i<=n;i++) phi[i]=i;
for(i=2;i<=n;i++)
if(!viz[i])
for(j=i;j<=n;j+=i) {phi[j]=phi[j]*(i-1)/i; viz[j]=1;}
for(sol=1,i=2;i<=n;i++) sol+=2*phi[i];
printf("%lld\n",sol);
return 0;
}