Cod sursa(job #486488)

Utilizator borsoszalanBorsos Zalan borsoszalan Data 21 septembrie 2010 19:43:31
Problema Sum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.37 kb
#include<stdio.h>

const int N = 1<<20;

int e[N];
int main()
{
	int n,i,j,k,x;
	freopen("sum.in","r",stdin);
	freopen("sum.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=100000;++i)
			e[i]=i;
		for(i=2;i<=100000;++i)
			if(e[i]==i)
				for(j=i;j<=100000;j+=i)
					e[j]=e[j]/i*(i-1);
	
	for (k=1;k<=n;++k)
	{
		scanf("%d",&x);
		printf("%lld\n",2*e[x]*x);
	}
	return 0;
}