Cod sursa(job #2215934)

Utilizator vladm98Munteanu Vlad vladm98 Data 24 iunie 2018 12:44:58
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <bits/stdc++.h>

using namespace std;

bool visited[2000001];

void buildCiur (int n) {
    visited[0] = visited[1] = 1;
    for (int i = 2; i <= n; ++i) {
        if (!visited[i]) {
            for (int j = i + i; j <= n; j += i) {
                visited[j] = 1;
            }
        }
    }
}

int main()
{
    freopen ("ciur.in", "r", stdin);
    freopen ("ciur.out", "w", stdout);
    int n, answer = 0;
    cin >> n;
    buildCiur(n);
    for (int i = 0; i <= n; ++i) {
        answer += (!visited[i]);
    }
    cout << answer;
    return 0;
}