Cod sursa(job #1254274)

Utilizator GrandmasterSoucup Bogdan Grandmaster Data 2 noiembrie 2014 14:21:38
Problema Sum Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include <fstream>
#include <iomanip>
#include <algorithm>
#include <set>
#include <vector>
#include <map>
#include <queue>
#include <stack>
#include <utility>
#include <string>
#include <cstring>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <limits>
#include <sstream>
#include <deque>
#include <bitset>
#include <complex>
#include <functional>
#include <memory>
#include <numeric>
#define x first
#define y second
typedef std::pair<int, int> pii;

using namespace std;
const int Max = 100007;
int x[Max], n, s = 0;
void amd()
{
	int v = 100004;
	for(int i = 0; i <= v; i++)
		x[i] = i;
	for(int i = 2; i <= v; i++)
	{
		if(x[i] == i)
		for(int j = i; j <= v; j+=i)
		{
			x[j] /= i;
			x[j] *= (i-1);
		}
	}
}

int main () {
	ifstream fin("sum.in");
	ofstream fout("sum.out");
	long long l, r;
	fin >> n;
	amd();
	for(int i = 0; i < n; i++)
	{
		fin >> l;
		r = x[l] * l * 2;
		fout << r << "\n";
	}
	return 0;
}