Cod sursa(job #2929610)

Utilizator DKMKDMatei Filibiu DKMKD Data 26 octombrie 2022 12:25:50
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>

using namespace std;

const int maxn = 2000001;
bool ciur[maxn];

void eratostene() {
    ciur[0] = ciur[1] = 1;
    for (int i = 2; i * i < maxn; i++)
        if (!ciur[i])
            for (int j = i * i; j < maxn; j += i)
                ciur[j] = true;
}

int main() {
    eratostene();
    ifstream fin("ciur.in");
    ofstream fout("ciur.out");
    int n;
    fin >> n;
    int nrprim = 0;
    for (int i = 2; i <= n; i++)
        nrprim += !ciur[i];
    fout << nrprim;

    return 0;
}