Pagini recente » Cod sursa (job #1614733) | Cod sursa (job #1295664) | Cod sursa (job #1444073) | Cod sursa (job #1877089) | Cod sursa (job #2932456)
#include <iostream>
#include <fstream>
using namespace std;
const int maxn = 200001;
int euler[maxn];
void init() {
for (int i = 2; i < maxn; i++)
euler[i] = i;
for (int i = 2; i < maxn; i++)
if (euler[i] == i)
for (int j = i; j < maxn; j += i)
euler[j] = euler[j]/i*(i - 1);
}
void show() {
}
int main() {
init();
ifstream fin("sum.in");
ofstream fout("sum.out");
int n;
fin >> n;
for (int i = 0; i < n; i++) {
int x;
fin >> x;
long long ans = (long long)x*euler[2*x];
if (x % 2 == 1)
ans *= 2LL;
fout << ans << '\n';
}
return 0;
}