Pagini recente » Cod sursa (job #778412) | Cod sursa (job #2682439) | Cod sursa (job #2321985) | Cod sursa (job #1571338) | Cod sursa (job #162172)
Cod sursa(job #162172)
#include <stdio.h>
const int MAXSIZE = 2000000/2+1;
char p[MAXSIZE];
//p[i] == 0 if 2*i + 1 is prime
int ciur( int n )
{
int i, j, nr = 1;
for( i = 1; 2*i*(i + 1) <= n; ++i )
if(p[i] == 0)
for( j = 2*i*(i + 1); 2*j + 1 <= n; j+= 2*i + 1 )
p[j] = 1;
for ( i=1; 2 * i + 1 <= n; ++i)
if (p[i] == 0) nr++;
return nr;
}
int main()
{
freopen( "ciur.in", "r", stdin );
freopen( "ciur.out", "w", stdout );
int n;
scanf( "%d", &n );
printf("%d", ciur( n ) );
return 0;
}