Pagini recente » Cod sursa (job #892154) | Cod sursa (job #362090) | Cod sursa (job #1870347) | Cod sursa (job #141296) | Cod sursa (job #118167)
Cod sursa(job #118167)
#include <cstdio>
const int maxn = 100001;
FILE *in = fopen("sum.in","r"), *out = fopen("sum.out","w");
int n;
int phi[maxn];
int main()
{
fscanf(in, "%d", &n);
// for (int i = 1; i <= maxn; ++i)
// phi[i] = i-1;
//
// for ( int i = 2; i <= maxn; ++i )
// for ( int j = i << 1; j <= maxn; j += i )
// phi[j] -= phi[i];
for ( int i = 1; 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] /= i, phi[j] *= (i-1);
long long x;
for ( int i = 1; i <= n; ++i )
{
fscanf(in, "%lld", &x);
long long s = (long long)phi[x]*x*2LL;
fprintf(out, "%lld\n", s);
}
return 0;
}