Cod sursa(job #992336)

Utilizator andreiblaj17Andrei Blaj andreiblaj17 Data 1 septembrie 2013 17:48:42
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <iostream>
#include <fstream>
#define nmax 100002

using namespace std;

ifstream in("sum.in");
ofstream out("sum.out");

int phi[nmax],m,maxim=0,v[nmax];

int main()
{
    in >> m;

    for (int i=1; i<=m; i++) in >> v[i], maxim=max(maxim, v[i]);

    for (int i=1; i<=maxim; i++)
        phi[i]=i-1;
    for (int i=2; i<=maxim; i++)
        for (int j=2*i; j<=maxim; j+=i)
            phi[j]-=phi[i];

    for (int i=1; i<=m; i++)
        out << v[i]*phi[v[i]]*2 << "\n";

    return 0;
}