Cod sursa(job #2592430)
Utilizator | Daniel Popescu darkeagle | Data | 1 aprilie 2020 18:08:26 |
---|---|---|---|
Problema | Sum | Scor | 85 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<stdio.h>
#define nmax 100000
int i, j, x, n, pt[nmax+1];
long long rsp;
int main()
{
freopen("sum.in", "rt", stdin);
freopen("sum.out", "wt", stdout);
for (i = 1; i <= nmax; i ++)
pt[i] = i-1;
for (i = 1; i <= nmax; i ++)
for (j = 2*i; j <= nmax; j += i)
pt[j] -= pt[i];
scanf("%d", &n);
for (i = 1; i <= n; i ++){
scanf("%d", &x);
rsp = (long long)2*pt[x]*x;
printf("%lld\n", rsp);
}
return 0;
}