Cod sursa(job #3219590)

Utilizator stefan_dore_Stefan Dore stefan_dore_ Data 31 martie 2024 18:20:27
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <iostream>
#include <fstream>
using namespace std;

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

const int XMAX = 100000;
int n, Phi[XMAX+1];

void euler(int NMAX) {
    int i, j;
    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] -= Phi[j]/i;
}

int main()
{
    int x;
    f >> n;
    euler(XMAX);
    while (n--) {
        f >> x;
        g << 2LL * Phi[x] * x << '\n';
    }
    f.close();
    g.close();
    return 0;
}