Cod sursa(job #1944016)

Utilizator andreiutu111Noroc Andrei Mihail andreiutu111 Data 28 martie 2017 22:01:07
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <fstream>
#include <cmath>

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

bool x[2000001];
long long a;
long q,l,j;

int main()
{

    fin>>a;
    if(a<3)fout<<0;
    else{

        q=sqrt(a)+1,l=0;

        for(long i=2;i<=q;i++)
            if(!x[i]){

                j=2;
                while(i*j<=a)x[i*j]=1,j++;

            }

         for(long i=2;i<=a;i++)
            if(!x[i])
                l++;
    fout<<l;
    }

}