Cod sursa(job #2135526)
| Utilizator | Data | 18 februarie 2018 22:09:10 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.5 kb |
#include <cstdio>
using namespace std;
#define NMAX 200005
int n;
bool viz[NMAX];
int main(){
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%d", &n);
int i, j, total = 0;
//ciurul lui eratostene < 3
for(i=2; i<=n; i++){
if(!viz[i]){
viz[i] = true;
total++;
for(j=i+i; j<=n; j+=i){
viz[j] = true;
}
}
}
printf("%d", total);
return 0;
}
