Cod sursa(job #3222364)

Utilizator bogdan1479Luca Bogdan Alexandru bogdan1479 Data 9 aprilie 2024 21:12:30
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>
#define QED fin.close(); fout.close(); return 0;
using namespace std;
const int VMAX = 1000006;
ifstream fin("sum.in");
ofstream fout("sum.out");
#define cin fin
#define cout fout

int v[VMAX + 1];

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

int main()
{
    ciur(VMAX);
    long long s=0;
    int n,x;
    cin >> n;
    for(int i=1; i<=n; i++)
    {
        cin>>x;
        cout<<2LL*v[x]*x<<'\n';
    }

    QED
}