Cod sursa(job #257913)

Utilizator ciorile.chioareBogatu Adrian ciorile.chioare Data 14 februarie 2009 12:48:44
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<stdio.h>
#define X 100002

int e[X];

void euler(int n)
{
	for(int i=0;i<=n;++i)
		e[i]=i;
	
	for(int i=2;i<=n;++i)
		if(e[i]==i)
			for(int j=i;j<=n;j+=i)
				e[j]=e[j]/i*(i-1);
	
}

void afisare(int a)
{
	for(int i=1;i<=a;++i)
		printf("%d ",e[i]);
}

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