Cod sursa(job #2565906)

Utilizator vmnechitaNechita Vlad-Mihai vmnechita Data 2 martie 2020 17:45:22
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
#include <bitset>

using namespace std;

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

bitset < 2000005 > a;

int main()
{
    int n, i, j, nr = 0;

    fin >> n;

    a[1] = 1;
    for ( i = 4 ; i <= n ; i += 2 ) a[i] = 1;

    for ( i = 3 ; i * i <= n ; i += 2 )
        if ( a[i] == 0 ) for ( j = i * i ; j <= n ; j += i + i ) a[j] = 1;

    for ( i = 1 ; i <= n ; i++ ) if ( a[i] == 0 ) nr++;

    fout << nr;

    return 0;
}