Cod sursa(job #156222)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 12 martie 2008 13:43:55
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<stdio.h>
#include<stdio.h>
#define N 100128
long long eu[N];
long long prime[N];
long long i,t,nr=0;

void totient()
{
	long long i,j;
	for(i=2;i<N;i++)
		eu[i]=i;
	for(i=2;i<N;i++)
		if(!prime[i])
			for(j=i;j<N;j+=i)
			{
				prime[j]=1;
				eu[j]=eu[j]-(eu[j]/i);
			}
}
int main()
{
	long long rez=0,n;
	freopen("sum.in","r",stdin);
	freopen("sum.out","w",stdout);
	scanf("%lld", &t);
	totient();
	for(i=1;i<=t;++i)
	{
		scanf("%lld",&n);
	    rez=2*eu[n]*n;
		printf("%lld\n", rez);
	}	
	return 0;
}