Cod sursa(job #2418987)

Utilizator bogikanagyNagy Boglarka bogikanagy Data 7 mai 2019 11:52:05
Problema Ciurul lui Eratosthenes Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
//#include <iostream>
#include <fstream>
#include <vector>

using namespace std;
ifstream cin ("ciur.in");
ofstream cout ("ciur.out");


vector <bool> x;
long long i,j,n;
int main()
{
    cin>>n;
    if (n==1) cout<<"0";
    else
    {
        x.resize(n+1);
        x[0]=false;
        x[1]=false;
        for (i=2;i<=n;++i) x[i]=true;
        for (i=2;i*i<=n;++i)
        {
            j=i;
            if (x[i])
            {
                while (j<=n)
                {
                    j+=i;
                    x[j]=false;
                }
            }
        }

        int db;
        db=0;
        for (i=2;i<=n;++i) if (x[i]==true) db++;

        cout<<db;
    }
    return 0;
}