Cod sursa(job #2212564)

Utilizator Fantastic_Mantudor voicu Fantastic_Man Data 14 iunie 2018 13:46:23
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <iostream>
#include <cstdio>
#define MAX 100000
using namespace std;
int e[MAX+1];
void Euler() {
    int i,j;
    for(i=2;i<=MAX;i++)
        e[i]=i;
    for(i=2;i<=MAX;i++)
        if(e[i]==i)
            for(j=i;j<=MAX;j+=i)
                e[j]=e[j]/i*(i-1);
}

int main() {
    freopen("sum.in","r",stdin);
    freopen("sum.out","w",stdout);
    int n,nr,i;
    scanf("%d",&n);
    Euler();
    for(i=1;i<=n;i++) {
        scanf("%d",&nr);
        cout<<e[nr]*nr*2<<'\n';
    }

    return 0;
}