41
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
[package]
|
||||
name = "euler41"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
primes = {version = "*", path = "../../lib/primes"}
|
||||
@@ -0,0 +1,24 @@
|
||||
use primes::Primes;
|
||||
|
||||
fn main() {
|
||||
let primes = Primes::get_between(2, 7_654_321);
|
||||
let result = primes
|
||||
.into_vec()
|
||||
.into_iter()
|
||||
.rev()
|
||||
.filter_map(|number| is_pandigital(&number.to_string()))
|
||||
.next()
|
||||
.unwrap();
|
||||
|
||||
println!("{result}");
|
||||
}
|
||||
|
||||
fn is_pandigital(s: &str) -> Option<String> {
|
||||
let length = s.len().to_string().chars().next().unwrap();
|
||||
for c in '1'..=length {
|
||||
if !s.contains(c) {
|
||||
return None;
|
||||
}
|
||||
}
|
||||
Some(s.to_string())
|
||||
}
|
||||
Reference in New Issue
Block a user