Cod sursa(job #234114)

Utilizator eugen.nodeaEugen Nodea eugen.nodea Data 19 decembrie 2008 23:28:42
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include <stdio.h>
long phi[2000002];
long n;

void totient()
{
  long i,j;
  for(i=1; i<=n;++i)
      phi[i]=i-1;
  for(i=2;i<=n;++i)
      for(j=2*i;j<=n;j+=i)
	  phi[j]-=phi[i];
}

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