Cod sursa(job #774383)

Utilizator lucian666Vasilut Lucian lucian666 Data 4 august 2012 15:27:55
Problema Sum Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.44 kb

#include<fstream>
#include<cstdio>
#define NN 100001

using namespace std;
ofstream out("sum.out");

int ciur[NN],n;

void inainte();

int main()
{
	freopen("sum.in","r",stdin);
	inainte();
	scanf("%d",&n);
	for(int x ; n ;--n)
	{
		scanf("%d",&x);
		out<<1LL* (ciur[x] << 1 ) *x<<'\n';
	}
	return 0;
}

void inainte()
{
	for(int i=1;i<NN;++i)
		ciur[i]=i-1;
	for(int i=2;i<NN;++i)
		for(int j= (i << 1 ) ;j<NN;j+=i)
			ciur[j]-=ciur[i];
}