Cod sursa(job #283881)

Utilizator cristikIvan Cristian cristik Data 20 martie 2009 13:36:47
Problema Sum Scor 70
Compilator c Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>
long phi[200001],a[100001],n,i,j,x,s,max;
int main()
{
    freopen("sum.in","r",stdin);
    freopen("sum.out","w",stdout);
    scanf("%ld",&n);
    for(i=1; i<=n; i++)
    {
        scanf("%ld",&a[i]);
        if(max<a[i]) max=a[i];
    }
    for(i=1; i<=max; i++)
     phi[i]=i;
    for(i=2; i<=max; i++)
     if(phi[i]==i)
      for(j=i; j<=max; j+=i)
      {
          phi[j]/=i;
          phi[j]*=(i-1);
      }
    for(i=1; i<=n; i++)
     printf("%ld\n",2*phi[a[i]]*a[i]);
    return 0;
}