From 23e9c95dbd46dad3032e00221592cd2528a1e387 Mon Sep 17 00:00:00 2001 From: William Ball Date: Fri, 24 Jul 2020 21:00:45 -0700 Subject: [PATCH] minor optimizations fourthfree rust --- rust/fourthfree/src/main.rs | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/rust/fourthfree/src/main.rs b/rust/fourthfree/src/main.rs index 8ee64ed..19935bb 100644 --- a/rust/fourthfree/src/main.rs +++ b/rust/fourthfree/src/main.rs @@ -17,14 +17,11 @@ fn is_fourth_free(x: &u64) -> bool { } fn step(x: &u64) -> Vec { - let mut new_xs: Vec = Vec::new(); - for d in 0..BASE { - let temp = x * BASE + d; - if is_fourth_free(&temp) { - new_xs.push(temp); - } - } - new_xs + (0..BASE) + .into_iter() + .map(|d| x * BASE + d) + .filter(|d| is_fourth_free(d)) + .collect() } fn next(ls: Vec) -> Vec { @@ -61,8 +58,5 @@ fn main() { i += 1; println!("{}\t{}", i, ls.len()); ls = next(ls); - if i == 6 { - break; - } } }