Cod sursa(job #3135064)

Utilizator profinfo114Prof Info profinfo114 Data 1 iunie 2023 18:18:47
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
#include <vector>
using namespace std;

int n;
int a[100001];

void read() {
    int i;
    ifstream f("sum.in");
    f >> n;
    for (i = 1; i <= n; i++)
        f >> a[i];
    f.close();
}

int phi[100001];

void solve() {
    int i, j;
    for (i = 2; i <= 100000; i++)
        phi[i] = i;
    for (i = 2; i <= 100000; i++)
        if (phi[i] == i)
            for (j = i; j <= 100000; j += i)
                phi[j] = phi[j] / i * (i - 1);
}

void output() {
    int i;
    ofstream g("sum.out");
    for (i = 1; i <= n; i++)
        g << 2LL * phi[a[i]] * a[i] << '\n';
    g.close();
}

int main() {
    read();
    solve();
    output();
    return 0;
}