Cod sursa(job #1251672)
| Utilizator | Data | 29 octombrie 2014 19:32:44 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.5 kb |
#include<iostream>
#include<fstream>
#include<bitset>
using namespace std;
bitset<2000000> ciur;
int n;
int cate = 0;
void generateCiur(){
int gap = 2;
while (gap <= n) {
if (ciur[gap] == true){
gap++;
}
else {
for (int i = gap; i <= n; i += gap){
ciur[i] = true;
}
gap++;
cate++;
}
}
}
int main(){
ifstream fin("ciur.in");
fin >> n;
fin.close();
generateCiur();
ofstream fout("ciur.out");
fout << cate;
fout.close();
return 0;
}