Pagini recente » Cod sursa (job #3265391) | Cod sursa (job #1848609) | Cod sursa (job #921221) | Cod sursa (job #2923836) | Cod sursa (job #1699501)
#include <stdio.h>
#define MAX_N 2000000
#define MAX_PRIME 200000
int low[ MAX_N ];
int primes[ MAX_PRIME ];
int top;
void ciur( int n ) {
int i , j;
for( i = 2 ; i <= n ; i++ ) {
if( low[ i ] == 0 ) {
primes[ top ] = i;
top++;
low[ i ] = i;
}
j = 0;
while( j < top && i * primes[ j ] <= n && primes[ j ] <= low[ i ] ) {
low[ i * primes[ j ] ] = primes[ j ];
j++;
}
}
}
int main() {
int n;
FILE *fin = fopen( "ciur.in" , "r" );
fscanf( fin , "%d" , &n );
fclose( fin );
ciur( n );
FILE *fout = fopen( "ciur.out" , "w" );
fprintf( fout , "%d" , top );
fclose( fout );
return 0;
}