From aa95c671bc431979e53421d9c57b2e725326fc0d Mon Sep 17 00:00:00 2001 From: Ayoub Ammar <162456634+kinoz01@users.noreply.github.com> Date: Mon, 18 Aug 2025 03:24:35 +0200 Subject: [PATCH] Update lib.rs more condensed solution using rust built-in methods --- solutions/nextprime/src/lib.rs | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/solutions/nextprime/src/lib.rs b/solutions/nextprime/src/lib.rs index d55940d0..198d0605 100644 --- a/solutions/nextprime/src/lib.rs +++ b/solutions/nextprime/src/lib.rs @@ -1,24 +1,3 @@ pub fn next_prime(nbr: u64) -> u64 { - if is_prime(nbr) { - return nbr; - } - next_prime(nbr + 1) -} - -fn is_prime(nbr: u64) -> bool { - if nbr > 0 { - if nbr <= 1 { - return false; - } - let mut d = 2; - while d * d <= nbr { - if nbr % d == 0 { - return false; - } - d += 1; - } - return true; - } else { - return false; - } + (nbr.max(2)..).find(|&n| (2..).take_while(|d| d * d <= n).all(|d| n % d != 0)).unwrap() }