Cod sursa(job #1881850)

Utilizator pimao2004Lupu Stefan Dragos pimao2004 Data 16 februarie 2017 19:46:59
Problema Sum Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>

using namespace std;
ifstream in ("sum.in");
ofstream out ("sum.out");
long long primicuel[1000001];
int v[1000001];
int main()
{
    int i,n,m=0,j;
    in>>n;
    for(i=1;i<=n;i++)
    {
        in>>v[i];
        m=max(v[i],m);
    }
    for(i=1;i<=m;i++)
    primicuel[i]=i;
    for(i=2;i<=m;i++)
    {
        if(primicuel[i]==i)
        for(j=i;j<=m;j+=i)
        {
            primicuel[j]/=i;
            primicuel[j]*=(i-1);
        }
    }
    for(i=1;i<=n;i++)
    {
        out<<v[i]*2*primicuel[v[i]]<<'\n';
    }
    return 0;
}