Pagini recente » Cod sursa (job #476599) | Cod sursa (job #3239761) | Monitorul de evaluare | Cod sursa (job #696546) | Cod sursa (job #648286)
Cod sursa(job #648286)
#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;
}