Pagini recente » Cod sursa (job #2504843) | Cod sursa (job #1386908) | Cod sursa (job #2699246) | Cod sursa (job #1646465) | Cod sursa (job #3122375)
#include <bits/stdc++.h>
#define Nmax 2000005
using namespace std;
bitset<Nmax>ciur;
void eratostene()
{
ciur[0] = ciur[1] = 1;
for(int i = 4; i <= Nmax; i+=2)
{
ciur[i] = 1;
}
for(int i = 3; i * i <= Nmax; i+=2)
{
if(!ciur[i])
{
for(int j = i * i; j <= Nmax; j += 2 * i)
{
ciur[j] = 1;
}
}
}
}
int n;
ifstream f("ciur.in");
ofstream g("ciur.out");
int main()
{
eratostene();
f >> n;
int cnt = 0;
for(int i = 1; i <= n; ++i)
{
if(!ciur[i])
{
cnt++;
}
}
g << cnt;
return 0;
}