Cod sursa(job #2438249)

Utilizator nTropicGravityesadasdwaadwqafr nTropicGravity Data 11 iulie 2019 21:08:19
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <fstream>

using namespace std;

ifstream fin("ciur.in");
ofstream fout("ciur.out");
/*
int checkPrime(int x) {
    for (int i = 2; i <= x / 2; i++)
        if (x % i == 0)
            return 0;

    return 1;
}

int Ciur(int N) {
    int counter = 0;

    for (int i = 2; i <= N; i++) {
        if (checkPrime(i))
            counter++;
    }

    return counter;
}

int main() {
    int N;
    fin >> N;
    fout << Ciur(N);
}
*/

int main() {
    unsigned n, counter = 0;
    char  vec[2000001];

    fin >> n;

    for (int i = 2; i <= n; i++)
        vec[i] = 1;

    for (int i = 2; i <= n; i++) {
        if (vec[i]) {
            counter++;

            for (int j = i + i; j <= n; j += i)
                vec[j] = 0;
        }
    }

    fout << counter;
}