Cod sursa(job #3360894)

Utilizator PetruVPetru Varabiescu PetruV Data 17 iulie 2026 15:00:46
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>

using namespace std;

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

const int XMAX = 100000;

int NrPrimeCuN[XMAX + 1];

void SirDeNrPrimeCuN() {
    NrPrimeCuN[1] = 1;
    for (int i = 1; i <= XMAX; i++)
        NrPrimeCuN[i] = i - 1;

    for (int i = 2; i <= XMAX; i++)
        for (int j = 2 * i; j <= XMAX; j += i)
            NrPrimeCuN[j] -= NrPrimeCuN[i];
}
int main() {
    SirDeNrPrimeCuN();

    int n, x;

    fin >> n;
    while (n--) {
        fin >> x;
        fout << (unsigned long long)NrPrimeCuN[x] * 2 * x << '\n';
    }
    return 0;
}