Pagini recente » Cod sursa (job #190287) | Cod sursa (job #1618501) | Cod sursa (job #2447681) | Cod sursa (job #3153935) | Cod sursa (job #2118495)
#include <cstdio>
const int MAXN = 1e5;
int phi[MAXN + 1];
int main() {
int n, x;
FILE *fin = fopen("sum.in", "r");
fscanf(fin, "%d", &n);
for (int i = 2; i <= MAXN; ++i) {
phi[i] = i;
}
for (int i = 2; i <= MAXN; ++i) {
if (phi[i] == i) {
for (int j = i; j <= MAXN; j += i) {
phi[j] = phi[j] * (i - 1) / i;
}
}
}
FILE *fout = fopen("sum.out", "w");
for (int i = 0; i < n; ++i) {
fscanf(fin, "%d", &x);
fprintf(fout, "%d\n", 2 * x * phi[x]);
}
fclose(fin);
fclose(fout);
return 0;
}