Cod sursa(job #1830200)

Utilizator bogdanboboc97Bogdan Boboc bogdanboboc97 Data 16 decembrie 2016 13:18:39
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>
#include <cstring>

int main()
{
    int n;
    std::ifstream in("ciur.in");
    in>>n;
    in.close();
    bool *ciur=new bool[n+1];
    for(int i=0;i<=n;i++)
        ciur[i]=true;
    //memset(ciur,true,sizeof(ciur));
    ciur[0]=ciur[1]=false;
    int sol=0;
    for(int i=2;i<=n;i++)
    if(ciur[i]==true)// daca i este prim
    {
        sol++;
        for(int j=2;j*i<=n;j++)//parcurgi toti multiplii lui i
            ciur[j*i]=false;//si ii marchezi ca nefiind primi
    }
    std::ofstream out("ciur.out");
    out<<sol<<'\n';
    out.close();
    delete ciur;
    return 0;
}