Cod sursa(job #1996630)

Utilizator bciobanuBogdan Ciobanu bciobanu Data 2 iulie 2017 09:29:19
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
#include <iostream>

using namespace std;

const int MAXN = 2000000;

bool mark[1 + MAXN];

int main() {
#ifdef INFOARENA
    ifstream cin("ciur.in");
    ofstream cout("ciur.out");
#endif
    int n; cin >> n;
    int answer = 0;
    for (int i = 2; i <= n; ++i) {
        if (!mark[i]) {
            ++answer;
            for (int j = i + i; j <= n; j += i) {
                mark[j] = true;
            }
        }
    }
    cout << answer << '\n';
}