Cod sursa(job #3241032)

Utilizator Tudor.1234Holota Tudor Matei Tudor.1234 Data 25 august 2024 09:57:58
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.91 kb
#include "bits/stdc++.h"
std :: bitset < 2000005 > prime;
const int DIM = 2000000;
inline static void PrecomputeSieve(){
            prime.set();
            prime[0] = prime[1] = false;
            for(int i = 2; i * i <= DIM; i++){
                    if(prime[i]){
                          for(int j = i * i; j <= DIM; j = j + i){
                                   prime[j] = false;
                          }
                    }
            }
}
inline static void Solve(){
             int n, cnt = 1;
             std :: cin >> n;
             for(int i  = 3; i <= n; i = i + 2){
                     cnt += prime[i];
             }
             std :: cout << cnt;
}
signed main(){
       freopen("ciur.in","r",stdin);
       freopen("ciur.out","w",stdout);
       std :: ios_base :: sync_with_stdio(false);
       std :: cin.tie(0);
       std :: cout.tie(0);
       PrecomputeSieve();
       Solve();
       return 0;
}