From 7bd4fb7f66d38769ac311a65c41faceb5d7d1900 Mon Sep 17 00:00:00 2001 From: hizenberg Date: Mon, 4 Mar 2024 18:34:16 +0000 Subject: [PATCH] Prime Sieve --- Number Theory/prime_sieve.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 Number Theory/prime_sieve.cpp diff --git a/Number Theory/prime_sieve.cpp b/Number Theory/prime_sieve.cpp new file mode 100644 index 0000000..3b08be4 --- /dev/null +++ b/Number Theory/prime_sieve.cpp @@ -0,0 +1,18 @@ +#define MAX_N 5000001 +bool is_prime[MAX_N]; + +bool is_sieve_eval = false; + +void sieve_erathosis(){ + if( is_sieve_eval ) return; + is_sieve_eval = true; + memset(is_prime,0,sizeof(is_prime)); + is_prime[0] = true , is_prime[1] = true; + for(int num = 2 ; num*num < MAX_N ; num++ ){ + if( !is_prime[num] ){ + for(int val = num*num ; val < MAX_N ; val += num ){ + is_prime[val] = true; + } + } + } +} \ No newline at end of file