Cod sursa(job #3149913)

Utilizator Mihai145Oprea Mihai Adrian Mihai145 Data 13 septembrie 2023 17:00:05
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <fstream>

using namespace std;

const int NMAX = 2e6;

bool d[NMAX + 1];
constexpr int sieve() {
    for (int i = 2; i * i <= NMAX; i++) {
        if (d[i]) continue;
        for (int j = i * i; j <= NMAX; j += i) d[j] = 1;
    }

    return 0;
}

const int _ = sieve();

int main() {
    ifstream cin("ciur.in");
    ofstream cout("ciur.out");

    int n, primes = 0; cin >> n;
    for (int i = 2; i <= n; i++) {
        if (!d[i]) primes++;
    }

    cout << primes << '\n';
    return 0;
}