Cod sursa(job #597475)

Utilizator darrenRares Buhai darren Data 22 iunie 2011 13:08:58
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>

using namespace std;

int X, N;
int phi[100002];

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

    for (int i = 1; i <= 100000; ++i)
        phi[i] = i;
    for (int i = 2; i <= 100000; ++i)
        if (phi[i] == i)
            for (int j = i; j <= 100000; j += i)
                phi[j] -= phi[j] / i;

    fin >> N;
    while (N--)
    {
        fin >> X;
        fout << 2LL * X * phi[X] << '\n';
    }

    fin.close();
    fout.close();
}