Cod sursa(job #1974357)
Utilizator | Data | 27 aprilie 2017 13:51:38 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <bits/stdc++.h>
using namespace std;
const int Nmax = 2000005;
bitset<Nmax> ciur;
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
int N;
scanf("%d", &N);
int cnt = 1;
for(int i = 3; i <= N; i += 2)
if(ciur[i] == 0){
++cnt;
for(int j = 3; i * j <= N; j += 2)
ciur[i * j] = true;
}
cout << cnt;
return 0;
}