Cod sursa(job #1730614)

Utilizator MocalinnoMoca Andrei Catalin Mocalinno Data 17 iulie 2016 12:35:36
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>

using namespace std;

#define LIMIT (1<<15)
bool ciur[2000005];

int main()
{
    ifstream fin("ciur.in");
    ofstream fout("ciur.out");

    int N;
    fin >> N;

    int cnt = 0;
    for (int i = 2; i <= N; ++i) {
        if (ciur[i] == 0) {
            ++cnt;
            if (i > LIMIT) continue;

            for (int j = i * i; j <= N; j += i)
                ciur[j] = 1;
        }
    }

    fout << cnt << '\n';
    return 0;
}