17 lines
370 B
Rust
17 lines
370 B
Rust
pub fn next_prime(num: usize) -> Option<usize> {
|
|
let max_next_prime = num * 2;
|
|
let mut is_prime: Vec<bool> = vec![true; max_next_prime];
|
|
|
|
for i in 2..max_next_prime {
|
|
for j in (i * 2..max_next_prime).step_by(i) {
|
|
is_prime[j] = false;
|
|
}
|
|
|
|
if i >= num && is_prime[i] {
|
|
return Some(i);
|
|
}
|
|
}
|
|
|
|
None
|
|
}
|