Cod sursa(job #2244743)

Utilizator Y.MalmsteenB.P.M. Y.Malmsteen Data 23 septembrie 2018 16:15:32
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <cstdio>
#define NMAX 100000

int Euler[NMAX + 1];

int main()
{
    freopen("sum.in", "r", stdin);
    freopen("sum.out", "w", stdout);
    int N, X;
    //
    for(int i = 1; i <= NMAX; i++)
        Euler[i] = i - 1;
    for(int i = 2; i <= NMAX; i++)
        for(int j = i + i; j <= NMAX; j += i)
            Euler[j] -= Euler[i];
    //
    scanf("%d", &N);
    while(N--)
    {
        scanf("%d", &X);
        printf("%lld\n", 2LL * X * Euler[X]);
    }
    return 0;
}