Cod sursa(job #2778379)

Utilizator maddog20151Matei Craciunescu maddog20151 Data 1 octombrie 2021 11:21:23
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <bitset>

using namespace std;

int cnt, n;

bitset<2000001> c;

int ciur(int n)
{
  for (int i = 2; i * i <= n; i++)
  {
    if (!c[i])
    {
      for (int j = i * i; j <= n; j += i)
      {
        c[j] = 1;
      }
    }
  }
  for (int i = 2; i <= n; i++)
  {
    if (!c[i])
    {
      cnt++;
    }
  }
  return cnt;
}

int main()
{
  cin >> n;

  cout << ciur(n);

  return 0;
}