Cod sursa(job #1928538)
| Utilizator | Data | 16 martie 2017 14:41:58 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <queue>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
const int NMax = 2e6 + 5;
int N;
bool notPrime[NMax];
int main() {
in>>N;
int nr = 1;
for (int i=3;i<=N;i+=2) {
if (notPrime[i]) {
continue;
}
++nr;
for (int j=3*i;j<=N;j+=2*i) {
notPrime[j] = true;
}
}
out<<nr;
in.close();out.close();
return 0;
}
