Cod sursa(job #355226)

Utilizator nightwish0031Vlad Radu Cristian nightwish0031 Data 10 octombrie 2009 14:18:20
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include<cstdio>

const int N = 1<<17;

int c[N];
void ciur()
{
	int i,j;
	for (i=1;i<N;i++)
		c[i]=i;
	for (i=2;i<N;i++)
		if (c[i]==i)
			for (j=i;j<N;j+=i)
				c[j]=c[j]/i*(i-1);
}

int main()
{
	int t,i,x;
	
	freopen("sum.in","r",stdin);
	freopen("sum.out","w",stdout);
	
	ciur();
    scanf ("%d",&t);
	for (i=1;i<=t;i++)
	{
		scanf("%d",&x);
		printf("%lld\n",(long long)2*x*c[x]);
	}
	
	
	return 0;
}