Pagini recente » Cod sursa (job #718792) | Cod sursa (job #1597578) | Cod sursa (job #400024) | Cod sursa (job #25265) | Cod sursa (job #599949)
Cod sursa(job #599949)
#include<cstdio>
int main()
{
FILE *fin = fopen("sum.in","r");
FILE *fout= fopen("sum.out","w");
int n,v[100000],phi[100000];
int max=0;
fscanf(fin,"%d",&n);
for(int i=0;i<n;++i)
{
fscanf(fin,"%d",&v[i]);
if(max<v[i])
max=v[i];
}
for(int i=1;i<=max;++i)
phi[i]=i;
for(int i=2;i<=max;++i)
{
if(phi[i]==i)
{
for(int j=i;j<=max;j+=i)
phi[j]/=i,phi[j]*=(i-1);
}
}
for(int i=0;i<n;++i)
fprintf(fout,"%lld\n",(long long)2*(long long)phi[v[i]]*v[i]);
return 0;
}