Cod sursa(job #2050772)

Utilizator victorovidiuZanoaga victor victorovidiu Data 28 octombrie 2017 11:18:26
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <bitset>
#include <fstream>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
const int N=2000000;
bitset <N+1> p;
int main()
{
    int n;
    ifstream in("ciur.in");
    in>>n;
    p.set();
    for(int i=2; i*i<=n; i++)
    {
        if(p[i])
        {
            for(int j=i*i; j<=n; j+=i)
            {
                p[j]=false;
            }
        }
    }
    in.close();
    int nr=0;
    for(int i=2; i<=n; i++)
    {
        if(p[i])
        {
            nr++;
        }
    }
    out<<nr;
    out.close();
    return 0;
}