Cod sursa(job #1043010)

Utilizator pulseOvidiu Giorgi pulse Data 27 noiembrie 2013 21:39:27
Problema Sum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <fstream>
#define NMAX 100005

using namespace std;

ifstream fin("sum.in"); ofstream fout("sum.out");

int n, phi[NMAX];
long long x;


void solve_phi ()
{
	for (int i=1; i<=NMAX; ++i)
		phi[i]=i-1;
	for (int i=1; i<=NMAX; ++i)
	{
		for (int j=2*i; j<=NMAX; j+=i)
			phi[j]-=phi[i];
	}
}

int main ()
{
	fin>>n;
	solve_phi ();
	for (int i=1; i<=n; ++i)
	{
		fin>>x;
		fout<<2*phi[x]*x<<"\n";
	}
	fin.close(); fout.close();
	return 0;
}