Pagini recente » Cod sursa (job #109682) | Cod sursa (job #2546389) | Cod sursa (job #1150392) | Cod sursa (job #2729373) | Cod sursa (job #3131501)
#include <fstream>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
bool ciur[2000001];
int Eratostene(int N)
{
long long i, j;
int cnt = 1;
ciur[1] = ciur[0] = 1;
for (i = 4; i <= N; i += 2)
ciur[i] = 1;
for (i = 3; i * i <= N; i += 2)
if (ciur[i] == 0)
for (j = i * i; j <= N; j += 2 * i)
ciur[j] = 1;
for (i = 3; i <= N; i += 2)
if (ciur[i] == 0)
cnt++;
return cnt;
}
int main()
{
int N;
in >> N;
in.close();
out << Eratostene(N) << '\n';
out.close();
return 0;
}