Cod sursa(job #2532642)

Utilizator chriss_b_001Cristian Benghe chriss_b_001 Data 28 ianuarie 2020 05:26:47
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("sum.in");
ofstream g("sum.out");

const int NMAX = 100000;
int v[NMAX + 5];


void Euler()
{
    for(int i = 1; i <= NMAX; i++)
        v[i] = i;
    for(int i = 2; i <= NMAX; i++)
        if(v[i] == i)
            for(int j = i; j <= NMAX; j += i)
            {
                v[j] /= i;
                v[j] *= i - 1;
            }
}


int main()
{
    Euler();
    int n;
    f >> n;
    int x;
    while(n--)
    {
        f >> x;
        g << 1LL * v[x] * 2 * x << '\n';
    }
    return 0;
}