Pagini recente » Cod sursa (job #307136) | Cod sursa (job #2162665) | Cod sursa (job #3189350) | Cod sursa (job #545174) | Cod sursa (job #676341)
Cod sursa(job #676341)
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
#define maxN 200005
int N , X , phi[maxN];
void ciur ()
{
for (int i = 1 ; i <= maxN ; ++i)
phi[i] = i - 1;
for (int t = 2 ; t <= maxN ; ++t)
if (phi[t] == t - 1)
for (int i = t + t ; i <= maxN ; i += t)
phi[i] -= phi[t];
}
int main ()
{
freopen ("sum.in" , "r" , stdin);
freopen ("sum.out" , "w" , stdout);
scanf ("%d" , &N);
long long sol;
ciur ();
for (int i = 1 ; i <= N ; ++i)
{
scanf ("%d" , &X);
sol = X * phi[X] * 2;
printf ("%lld\n" , sol);
}
return 0;
}