Pagini recente » Cod sursa (job #2723120) | Cod sursa (job #468889) | Cod sursa (job #604728) | Cod sursa (job #420332) | Cod sursa (job #135885)
Cod sursa(job #135885)
#include <stdio.h>
#include <iostream>
using namespace std;
const int maxN = 100001;
bool prim[ maxN ];
float phi[ maxN ];
int N, X;
int aX;
long long sum;
int main()
{
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
for ( int i = 1; i <= maxN; i++ )
phi[ i ] = i*1.0;
for ( int i = 2; i <= maxN; i++ ) {
if ( !prim[ i ] ) {
for ( int j = i; j <= maxN; j += i ) {
prim[ j ] = 1;
phi[j] *= (float) ( 1-(1.0/i) );
}
}
}
for ( scanf("%d\n", &N); N; N-- ) {
scanf("%d\n", &X );
sum = 2*X*( (long long) phi[ X ] );
printf("%lld\n", sum );
}
return 0;
}