Pagini recente » Cod sursa (job #964269) | Cod sursa (job #2581505) | Cod sursa (job #640508)
Cod sursa(job #640508)
#include <stdio.h>
#define NMAX 1000005
int N;
char prim[NMAX];
long long tot[NMAX];
long long S;
int main(void)
{
int i, j;
freopen("fractii.in", "r", stdin);
freopen("fractii.out", "w", stdout);
scanf("%d", &N);
for(i=1;i<=N;i++)
tot[i]=i;
for (i = 2; i <= N; ++i)
if (!prim[i])
{
tot[i]=i-1;
for (j = i+i; j <= N; j += i)
{
prim[j] = 1;
tot[j]=tot[j]/i*(i-1);
}
}
for(i=1;i<=N;i++)
S=S+1LL*tot[i];
printf("%d",2*S-1);
return 0;
}