Cod sursa(job #1807054)

Utilizator EvohuntAndrei Dana Evohunt Data 15 noiembrie 2016 23:01:32
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>
#include <cmath>

#define DIM_MAX 2000000

using namespace std;

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

bool v[DIM_MAX + 1];
int nr = 0;

void ciur() {

    for (int i = 2; i <= sqrt(DIM_MAX); i++)
        if (v[i] == 0)
            for (int j = 2; j <= DIM_MAX / i; j++)
                v[i * j] = 1;

}

int N;

int main()
{

    fin >> N;

    ciur();

    for (int i = 2; i <= N; i++)
        if (v[i] == 0)
            nr++;

    fout << nr;

    return 0;
}