Cod sursa(job #315313)

Utilizator funkydvdIancu David Traian funkydvd Data 14 mai 2009 23:00:43
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<stdio.h>
#define N 100001
int n,v[N],x;
long long y;
void euler()
{
  int i,j;
  for( i=2 ; i<N ; ++i )
   v[i]=i;
  for( i=2 ; i<N ; ++i )
    if( v[i]==i )
   for(j=i ; j<N ; j+=i )
	 v[j] = v[j] / i * ( i - 1 );
}
int main()
  {
      freopen("sum.in","r",stdin);
      freopen("sum.out","w",stdout);
      scanf("%d",&n);
      euler();
      for (int i=1; i<=n; i++)
      {
       scanf("%d", &x);
       y=2*v[x]*x;
       printf ("%lld\n",y);
      }
      euler();
      return 0;  
  }