Pagini recente » Cod sursa (job #2915675) | Cod sursa (job #2853962) | Cod sursa (job #1782962) | Cod sursa (job #2757132) | Cod sursa (job #936452)
Cod sursa(job #936452)
#include <fstream>
#define m 100000000/8 + 1
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
long long n, i, j;
long nr = 1;
static char p[m];
int main ()
{
f >> n;
for (i = 1; ((i * i) << 1) + (i << 1) <= n; i += 1)
{
if ((p[i >> 3] & (1 << (i & 7))) == 0)
{
for (j = ((i * i) << 1) + (i << 1); (j << 1) + 1 <= n; j += (i << 1) + 1)
{
p[j >> 3] |= (1 << (j & 7));
}
}
}
for (i = 1; 2 * i + 1 <= n; ++i)
if ((p[i >> 3] & (1 << (i & 7))) == 0)
nr ++;
g << nr;
return 0;
}