Cod sursa(job #2782693)

Utilizator Luca_Miscocilucainfoarena Luca_Miscoci Data 12 octombrie 2021 20:24:58
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
#include <bitset>

using namespace std;

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

const int N = 2000000;
bitset <N + 1> ciur;

int main()
{
    int n, k;
    fin >> n;
    k = 0;
    for (int i = 2; i * i <= n; i++){
      if (ciur[i] == 0){
        for (int j = i * i; j <= n; j += i)
          ciur[j] = 1;
        }

    }
    for (int i = 2; i <= n; i++)
      if (ciur[i] == 0)
        k ++;
    fout << k;
    return 0;
}