Cod sursa(job #1888333)

Utilizator gerd13David Gergely gerd13 Data 22 februarie 2017 01:18:39
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <fstream>
#include <bitset>


using namespace std;

int number, solution;
const int NMAX = 2000005 ;

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


bitset<NMAX> prime ;

inline void read()
{
    fin >> number ;

}

inline void initialize()
{

    prime[2] = 0 ;

}

inline void calculatePrimeNumber()
{
    for(int i = 2 ; i <= number ; i ++)
    {

        if(prime[i] == 0)
        {
            solution += 1 ;

            for(int j = i + i ; j <= number ; j += i)
                prime[j] = 1 ;

        }
    }
}

inline void solve()
{
    calculatePrimeNumber() ;
}

inline void out()
{
    fout << solution << '\n';
}


int main()
{
    initialize();
    read() ;
    solve() ;
    out() ;
    return 0;
}