Cod sursa(job #2308341)

Utilizator chiutamarcelChiuta Mihai Marcel chiutamarcel Data 26 decembrie 2018 21:29:31
Problema Sum Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <iostream>
#include <fstream>
#define NMAX 100005
using namespace std;

ifstream in("sum.in");
ofstream out("sum.out");
long long x = 0;
int n = 0, phi[NMAX + 5], i, j;

int main()
{
	for (i = 1; i < NMAX; ++i) {
		phi[i] = i;
	}
	for (i = 2; i < NMAX; ++i) {
		if(phi[i] == i){
            for(j = i; j < NMAX; j += i){
                phi[j] /= i;
                phi[j] *= (i-1);
            }
		}
	}
    in >> n;
    for(i = 1; i <= n; ++i) {
        in >> x;
        out << x * phi[x] * 2 << endl;
    }
	return 0;
}