Cod sursa(job #1806125)
Utilizator | Data | 14 noiembrie 2016 20:41:26 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
bitset<2000001> p;
int main (){
ifstream fin("ciur.in");
ofstream fout("ciur.out");
int nr,n;
fin>>n;
for (int i=4; i<=n; i+=2)
p[i] = true;
for (int i=3; i<=n; i+=2){
if (p[i]==false)
++nr;
for (int j=i+i; j<=n; j+=i){
p[j] = true;
}
}
fout<<nr;
return 0;
}