Pagini recente » Cod sursa (job #778339) | Cod sursa (job #2587115) | Borderou de evaluare (job #702914) | Cod sursa (job #1126141) | Cod sursa (job #2308338)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("sum.in");
ofstream out("sum.out");
const int NMAX = 1000000;
long long phi[NMAX + 5];
int n = 0, x = 0, i, j;
int main()
{
for (i = 1; i < NMAX; ++i) {
phi[i] = i;
}
for (i = 2; i < NMAX; ++i) {
if(phi[i] == i){
for(j = i; j < NMAX; j += i){
phi[j] /= i;
phi[j] *= (i-1);
}
}
}
in >> n;
for(i = 1; i <= n; i++) {
in >> x;
out << x * phi[x] * 2 << endl;
}
return 0;
}