Pagini recente » Cod sursa (job #2053414) | Monitorul de evaluare | Cod sursa (job #2059058) | Cod sursa (job #2119787) | Cod sursa (job #1202891)
#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;
}