Cod sursa(job #1970764)
| Utilizator | Data | 19 aprilie 2017 16:19:30 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include <iostream>
#include <bitset>
#include <fstream>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
int ciur(int x){
int r=0;
bitset<2000002> PRIM;
PRIM.flip();
PRIM[0]=PRIM[1]=0;
for(int i=2;i<=x;i++){
if(PRIM[i]){
for(int j=2*i;j<=x;j+=i)
PRIM[j]=0;
r++;
}
}
return r;
}
int main(){
int x;
in>>x;
out<<ciur(x);
return 0;
}
