Cod sursa(job #1647084)

Utilizator bogdanRUSURusu Bogdan bogdanRUSU Data 10 martie 2016 18:56:58
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
#include <bitset>
using namespace std;

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

bitset<2000000> primes;

int main()
{
    unsigned N, counter = 0;;

    fin >> N;

    for(unsigned i = 2; i <= N; ++i)
        primes[i] = 1;

    for(unsigned i = 2; i <= N; ++i)
    {
        if(primes[i])
        {
            for(unsigned j = i * i; j <= N; j += i)
                primes[j] = 0;
            ++counter;
        }
    }
    fout << counter;
    fin.close();
    fout.close();
    return 0;
}