Cod sursa(job #1202891)

Utilizator buzu.tudor67Tudor Buzu buzu.tudor67 Data 30 iunie 2014 00:40:49
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<cstdio>
FILE *ok;
const int maxn = 100000;

int phi[maxn+5];
int t,x,ok_i;

void indicator_euler(){
     int i,j;
     for(i=1;i<=maxn;i++) phi[i]=i;
     for(i=2;i<=maxn;i++)
      if(phi[i]==i) 
        for(j=i;j<=maxn;j+=i) phi[j]-=(phi[j]/i);
}

int main(){
    ok=freopen("sum.in","r",stdin);
    ok=freopen("sum.out","w",stdout);
    
    indicator_euler();
    
    ok_i=scanf("%d",&t);
    while(t){
             ok_i=scanf("%d",&x);
             ok_i=printf("%lld\n",2LL*x*phi[x]);
             t--;
            }
    
    fclose(stdin);
    fclose(stdout);
    return 0;
}