Cod sursa(job #2701445)

Utilizator TitanVSirbu Vlad stefan TitanV Data 31 ianuarie 2021 12:18:45
Problema Ciurul lui Eratosthenes Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <iostream>
#include <fstream>

using namespace std;

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

bool a[2000000];

void eratosthenes(int nrp, int n)
{
    int i=2;
    while(nrp*i<n)
    {
        a[nrp*i]=1;
        i++;
    }

    while(nrp<n)
    {
        ++nrp;
        if(!a[nrp])
        eratosthenes(nrp,n);
    }



}

int main()
{
    int n;
    in>>n;

    eratosthenes(2,n);

    int sum=0;

    for(int i=2; i<n;i++)
    {

        if(!a[i])
        sum++;
    }

    out<<sum;
    return 0;
}