Pagini recente » Cod sursa (job #1946019) | Cod sursa (job #325061) | Cod sursa (job #1852564) | Cod sursa (job #2214918) | Cod sursa (job #1253479)
#include<cstdio>
using namespace std;
FILE *fin = fopen( "fractii.in" , "r" ), *fout = fopen( "fractii.out" , "w" );
const int nmax = 1000000;
int e[ nmax + 1 ], s[ nmax + 1 ];
void calc( int n ) {
for( int i = 2; i <= n; ++ i ) {
e[ i ] = i;
}
for( int i = 2; i <= n; ++ i ) {
if ( e[ i ] == i ) {
for( int j = i; j <= n; j += i ) {
e[ j ] = e[ j ] / i * (i - 1);
}
}
}
for( int i = 2; i <= n; ++ i ) {
s[ i ] = s[ i - 1 ] + e[ i ];
}
}
int main() {
int n;
fscanf( fin, "%d", &n );
calc( n );
fprintf( fout, "%d\n", 2 * s[ n ] + 1 );
fclose( fin );
fclose( fout );
return 0;
}