Cod sursa(job #3329225)

Utilizator DariusJohnDarius Dumitrescu DariusJohn Data 12 decembrie 2025 12:35:57
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <bits/stdc++.h>
#include <fstream>
#include <vector>
#define nmax 2000001
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
vector<bool> primes(nmax, 0);
void ciur() {
  primes[0] = primes[1] = 1;
  for (int i = 2; i * i < nmax; i++)
    if (primes[i] == 0)
      for (int j = i * i; j < nmax; j += i)
        primes[j] = 1;
}
int main() {
  ciur();
  int n, ans = 0;
  fin >> n;
  for (int i = 0; i <= n; i++)
    if (!primes[i])
      ans++;
  fout << ans;
  return 0;
}