Pagini recente » Cod sursa (job #2279205) | Cod sursa (job #270591) | Cod sursa (job #537719) | Diferente pentru implica-te/arhiva-educationala intre reviziile 81 si 80 | Cod sursa (job #186032)
Cod sursa(job #186032)
#include <stdio.h>
#include <stdlib.h>
//#include <timer.h>
#define N 100010
//using namespace std;
int phi[N];
void precalc(){
int i,j;
for (i=1;i<=N;i++)
phi[i]=i;
for (i=2;i<=N;i++)
if (phi[i]==i)
for (j=i;j<=N;j+=i){
phi[j] /=i;
phi[j] *= (i-1);
}
}
int main(){
int n,x,i;
//timer t;
//t.start();
precalc();
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;++i){
scanf("%d",&x);
printf("%d\n",x*phi[x]*2);
}
//cout<<"TIMP DE EXECUTIE "<<t<<" SECUNDE";
return 0;
}