Cod sursa(job #2831680)

Utilizator Chris.sCristian Chris.s Data 11 ianuarie 2022 21:17:26
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>
using namespace std;

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


const int N = 2e6;
bool prim[N + 1];

void Ciur(int n)
{
      for (int i = 2; i <= n; ++i)
            prim[i] = true;

      for (int i = 2; i * i <= n; ++i)
            if (prim[i])
                  for (int j = 2; i * j <= n; ++j)
                        prim[i * j] = false;
}

int main()
{
      Ciur(N);

      int n;
      fin >> n;
      int cnt = 0;
      for(int i = 1; i <= n; ++i)
            if(prim[i] == true)
                  cnt++;

      fout << cnt;
}