Pagini recente » Cod sursa (job #456270) | Cod sursa (job #270811) | Cod sursa (job #1081139) | Cod sursa (job #2082659) | Cod sursa (job #514275)
Cod sursa(job #514275)
#include <stdio.h>
int i,j,N,sol;
char p[125010];
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d",&N);
for(i=1;4*i*i+4*i+1<=N;i++)
if((p[i/8]&(1<<(i&7)))==0)
for(j=2*i*i+2*i;2*j+1<=N;j+=(2*i+1))
p[j/8]|=(1<<(j&7));
sol=1;
for(i=1;2*i+1<=N;i++)
if((p[i/8]&(1<<(i&7)))==0) sol++;
printf("%d\n",sol);
return 0;
}