Pagini recente » Cod sursa (job #2215402) | Cod sursa (job #2409916) | Cod sursa (job #1321614) | Cod sursa (job #1212869) | Cod sursa (job #1910046)
# include <bits/stdc++.h>
using namespace std;
const int Nmax = 1e5;
int Euler[Nmax + 1], i, j, x, n;
void pre_calc() {
for (i = 1; i <= Nmax; ++i)
Euler[i] = i;
for (i = 2; i <= Nmax; ++i)
if (Euler[i] == i)
for (j = i; j <= Nmax; j += i)
Euler[j] = (Euler[j] / i) * (i - 1);
}
int main ()
{
freopen("sum.in", "r", stdin);
freopen("sum.out", "w", stdout);
pre_calc();
scanf("%d\n", &n);
for (i = 1; i <= n; ++i){
scanf("%d\n", &x);
long long sol = 1LL * x * 2 * Euler[x];
printf("%lld\n", sol);
}
return 0;
}