Pagini recente » Cod sursa (job #2930685) | Cod sursa (job #1221974) | Cod sursa (job #2715273) | Cod sursa (job #2082505) | Cod sursa (job #648287)
Cod sursa(job #648287)
#include<stdio.h>
char v[ 20000001];
int ciur( const int &N){
if( N <= 1) return 0;
if( N == 2) return 1;
int nr = 1;
for( int i = 3; i <= N; i += 2 ){
if( v[ i ] == 1) continue;
nr++;
if( (long long)i * i > N ) continue;
for( int j = i * i; j <= N; j = j+ 2*i)
v[ j ] = 1;
}
return nr;
}
int main() {
int N;
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d", &N);
printf("%d\n", ciur(N));
return 0;
}