Cod sursa(job #228878)

Utilizator necropriestvoloc cristina loredana necropriest Data 8 decembrie 2008 17:17:14
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.44 kb
#include<stdio.h>

const int N=1000000;

int e[N];

void euler()
{
	for(int j=1;j<N;++j)
		e[j]=j;
	for(int i=2;i<N;++i)
		if(e[i]==i)
			for(int j=i;j<N;j+=i)
				e[j]=e[j]/i*(i-1);
}

int main()
{
	freopen("fractii.in","r",stdin);
	freopen("fractii.out","w",stdout);
	int n;
	scanf("%d",&n);
	euler();
	int s=0;
	for(int i=2;i<=n;++i)
		s+=e[i];
	printf("%d\n",1+2*s);
	fclose(stdin);
	fclose(stdout);
	return 0;
}