From ec0267a45515bee4041b5034b33f0e77b3e38770 Mon Sep 17 00:00:00 2001 From: Bearmine Date: Mon, 16 Jun 2025 13:36:02 -0500 Subject: [PATCH] Only make a single cache key (minor optimization) --- day_07/src/equation/operator_set.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/day_07/src/equation/operator_set.rs b/day_07/src/equation/operator_set.rs index 1b8af5b..307af72 100644 --- a/day_07/src/equation/operator_set.rs +++ b/day_07/src/equation/operator_set.rs @@ -60,11 +60,12 @@ fn create_permutations_recurse( } pub fn create_permutations(set: HashSet, len: usize) -> HashSet> { - if let Some(cached_value) = check_operator_set_cache(&PermutationCacheKey::new(len, &set)) { + let cache_key = PermutationCacheKey::new(len, &set); + if let Some(cached_value) = check_operator_set_cache(&cache_key) { return cached_value; } let mut permutations = HashSet::new(); create_permutations_recurse(&set, len, &mut permutations, vec![]); - store_operator_set_in_cache(PermutationCacheKey::new(len, &set), permutations.clone()); + store_operator_set_in_cache(cache_key, permutations.clone()); permutations }