Cod sursa(job #2883910)
| Utilizator | Data | 1 aprilie 2022 23:00:27 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
void ciur(vector<bool> &v, int n) {
v[0] = v[1] = false;
for(int i = 2; i * i <= n; i++) {
if(v[i]) {
for(int j = i * i; j <= n; j += i)
v[j] = false;
}
}
}
int main() {
int n, ans = 0;
f >> n;
vector<bool> v(n + 1, true);
ciur(v, n);
for(bool x : v) if(x == true) ans++;
g << ans;
return 0;
}