Pagini recente » Cod sursa (job #843956) | Cod sursa (job #1350168) | Cod sursa (job #2025843) | Cod sursa (job #1649095) | Cod sursa (job #171618)
Cod sursa(job #171618)
// http://infoarena.ro/problema/sum
#include <stdio.h>
FILE *fin = fopen("sum.in","r"), *fout = fopen("sum.out","w");
const long nmax = 10000;
long i, j, n, x;
long long T[nmax];
int main()
{
fscanf(fin, "%ld\n", &n);
for (i = 1; i <= nmax; i++)
T[i] = i;
for (i = 2; i <= nmax; i++)
if (T[i] == i)
for (j = i; j <= nmax; j+=i)
{
T[j] /= i;
T[j] *= (i-1);
}
for (i = 1; i <= n; i++)
{
fscanf(fin, "%ld\n", &x);
fprintf(fout, "%lld\n", 2 * T[x] * x);
}
fcloseall();
return 0;
}