Cod sursa(job #2280964)

Utilizator niculaestefan22Stefan Niculae niculaestefan22 Data 11 noiembrie 2018 14:24:19
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>


using namespace std;

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

const int nmax=2000005;
int ans,n;
bool a[nmax];

void ciur()
{
    int i,j;
    for(i=3;i*i<=n;i=i+2)
    {
        if(a[i]==false)
        {
            for(j=i*i;j<=n;j=j+2*i)
            {
                a[j]=true;
            }

        }
    }

    ans=1;
    for(i=3;i<=n;i+=2)
    {
        if(a[i]==false) ans++;
    }
    fout<<ans;
}

int main()
{
    fin>>n;
    ciur();
    fout.close();

}