Pagini recente » Cod sursa (job #75116) | Cod sursa (job #1552759) | Cod sursa (job #543023) | Cod sursa (job #230655) | Cod sursa (job #2782373)
#include <stdio.h>
#define MAX 100001
int f[ MAX + 10 ];
long long rez;
int n;
void Precalcul() {
for( int i = 1; i <= MAX; i++ )
f[ i ] = i;
for( int i = 2; i <= MAX; i++ )
if( f[ i ] == i )
for( int j = i; j <= MAX; j += i )
f[ j ] = f[ j ] / i * ( i - 1 );
}
int main()
{
int x;
Precalcul();
FILE *fin = fopen( "sum.in", "r" );
FILE *fout = fopen( "sum.out", "w" );
fscanf( fin, "%d", &n );
for( int i = 0; i < n; i++ ) {
fscanf( fin, "%d", &x );
fprintf( fout, "%lld\n", 2LL * x * f[ x ] );
}
fclose( fin );
fclose( fout );
return 0;
}