Pagini recente » Cod sursa (job #569505) | Cod sursa (job #2618038) | Cod sursa (job #1873393) | Cod sursa (job #194453) | Cod sursa (job #978214)
Cod sursa(job #978214)
#include<stdio.h>
#define N 100000
int ind[N+1];
void preprocesare()
{
int i;
for(i=1;i<=N;++i)
ind[i]=i;
int j;
for(i=2;i<=N;++i)
if(ind[i]==i)
for(j=i;j<=N;j+=i)
ind[j]=ind[j]/i*(i-1);
}
int main()
{
FILE *fin,*fout;
fin=fopen("sum.in","r");
fout=fopen("sum.out","w");
int n;
fscanf(fin,"%d",&n);
preprocesare();
int i;
for(i=0;i<n;i++)
{
int var;
fscanf(fin,"%d",&var);
long long rez=var*ind[var];
fprintf(fout,"%lld\n",rez*2);
}
fclose(fin);
fclose(fout);
return 0;
}