Cod sursa(job #1314886)
| Utilizator | Data | 12 ianuarie 2015 14:45:46 | |
|---|---|---|---|
| Problema | Sum | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <cstdio>
#define Dim 100003
using namespace std;
FILE *fin=freopen("sum.in","r",stdin);
FILE *fout=freopen("sum.out","w",stdout);
int PHI[Dim], n, x;
void Compute()
{
int i, j;
for(i = 1; i < Dim ; ++i)
PHI[i] = i - 1;
for(i = 2; i * 2 < Dim ; ++i)
for(j = i * 2 ; j < Dim ; j += i)
PHI[j] -= PHI[i];
}
int main()
{
Compute();
for(scanf("%d", &n); n > 0 ; --n)
{
scanf("%d", &x);
printf("%lld\n", 1LL * 2 * x * PHI[x]);
}
return 0;
}
