Cod sursa(job #352568)

Utilizator pirvupirvu tudor pirvu Data 2 octombrie 2009 12:39:51
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.4 kb
#include<cstdio>

const int N=1<<20;

int e[N];

int n,i,j;
long long p;

int main()
{
	freopen("fractii.in","r",stdin);
	freopen("fractii.out","w",stdout);	
	
	scanf("%d", &n);
	
	for (i=2;i<N;++i)
		e[i]=i;
	
	for (i=2;i<N;++i)
		if (e[i]==i) 
			for (j=i;j<N;j+=i)
				e[j]=e[j]/i*(i-1);
	
	for (i=2;i<=n;i++)
		p+=(long long)e[i]*2;
	
	p++;
	printf("%lld", p);
	return 0;
}