Pagini recente » Cod sursa (job #1600692) | Cod sursa (job #379308) | Cod sursa (job #1078078) | Cod sursa (job #1156681) | Cod sursa (job #759148)
Cod sursa(job #759148)
#include <cstdio>
#define MAX 2000002
unsigned char p[MAX/8];
void ciur(){
int i=2;
while(i<=1414)
{
while(p[i/8]&1<<i%8)i++;
for(int j=i*i;j<MAX;j+=i)p[j/8]|=1<<j%8;
i++;
}
}
int main(){
int n;
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
ciur();
scanf("%d",&n);
int nr = 0;
for(int i=2;i<=n;i++)
if((p[i/8]&1<<i%8) == 0)nr++;
printf("%d\n",nr);
return 0;
}