Cod sursa(job #2931596)
| Utilizator | Data | 31 octombrie 2022 16:47:26 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include <bits/stdc++.h>
using namespace std;
vector<size_t> sieve(size_t n) {
vector<bool> isPrime(n + 1, true);
isPrime[0] = isPrime[1] = false;
vector<size_t> primes;
for (size_t i = 2; i <= n; ++i)
if (isPrime[i]) {
primes.push_back(i);
for (size_t j = 2 * i; j <= n; j += i)
isPrime[j] = false;
}
return primes;
}
int main() {
ifstream fin("ciur.in");
ofstream fout("ciur.out");
size_t n;
fin >> n;
fout << sieve(n).size() << '\n';
}