Pagini recente » Cod sursa (job #1894338) | Cod sursa (job #130709) | Borderou de evaluare (job #561567) | Cod sursa (job #1099094) | Cod sursa (job #557927)
Cod sursa(job #557927)
# include <fstream>
using namespace std;
int n;
char w [ ( 10000000 >> 3 ) + 1 ];
int ciur ()
{ int i, j, x, nr = 1;
for ( i = 4; i <= n; i += 2 )
w [ i >> 3 ] |= ( 1 << ( i & 7 ) );
for ( i = 3; i <= n; i += 2 )
if ( !(w [ i >> 3 ] & ( 1 << ( i & 7 ) ) ) )
{ ++nr;
for ( j = i + i + i, x = i << 1; j <= n; j += x )
w [ j >> 3 ] |= ( 1 << ( j & 7 ) );
}
return nr;
}
int main ()
{ ifstream f ( "ciur.in" );
ofstream g ( "ciur.out");
f >> n;
g << ciur() << '\n';
g.close ();
return 0;
}