Pagini recente » Cod sursa (job #1599727) | Cod sursa (job #2805507) | Cod sursa (job #1511015) | Cod sursa (job #2037370) | Cod sursa (job #1562042)
#include <bits/stdc++.h>
using namespace std;
bitset <2000005> ciur;
int sieve(int n){
int i,j;
int sol = 1;
for(i = 4;i <= n;i += 2){
ciur[i] = 1;
}
for(i = 3;i*i <= n;i += 2){
if(ciur[i] == 0){
sol++;
for(j = i*i;j <= n;j += 2*i){
ciur[j] = 1;
}
}
}
return sol;
}
int main()
{
int n;
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%d",&n);
printf("%d",sieve(n));
return 0;
}