Cod sursa(job #220357)

Utilizator allynaAlina S allyna Data 10 noiembrie 2008 16:00:38
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <stdio.h>
int n,w,i,f[1000],x;
long long s, phi;
int main()
{
	freopen("fractii.in", "r", stdin);
	freopen("fractii.out", "w", stdout);
	scanf("%d\n", &x);
	for(n=2;n<=x;n++)
	{
		w=n;
		phi=n;
		for(i=2;i*i<=n;++i)
   	 	{
			if(w%i==0)             
   		 	{
				phi=((long long) phi * (i - 1)) / i;
				while(w%i==0) w=w/i;
			}
		}    	
		if(w!=1) {
			phi = ((long long) phi * (w - 1)) / w;
		}
		s=s+(2*phi);
	}
	printf("%lld\n", s);
	return 0;		
}