Pagini recente » Cod sursa (job #1706045) | Cod sursa (job #2215171) | Cod sursa (job #422485) | Cod sursa (job #1014887) | Cod sursa (job #1011764)
#include <stdlib.h>
#include <stdio.h>
void phi(unsigned long *phi,unsigned long n)
{
for (unsigned long i=1;i<=n;i++) phi[i]=i;
for (unsigned long i=2;i<=n;i++)
if (phi[i]==i)
for (unsigned long j=i;j<=n;j+=i) phi[j] /=i, phi[j] *= (i-1);
}
int main()
{
unsigned long n,sum, *v;
freopen("fractii.in", "rt", stdin);
freopen("fractii.out", "wt", stdout);
scanf("%lu", &n);
sum = 1;
v = (unsigned long *)malloc(n*sizeof(unsigned long));
phi(v,n);
for(unsigned long i=2;i<=n;i++)
sum += v[i] *2;
printf("%lu", sum);
return 0;
}