diff --git a/exercises/nucleotide-count/example.rs b/exercises/nucleotide-count/example.rs index f63e4d262..0c389921a 100644 --- a/exercises/nucleotide-count/example.rs +++ b/exercises/nucleotide-count/example.rs @@ -1,5 +1,4 @@ use std::collections::HashMap; -use std::collections::hash_map::Entry; pub fn count(nucleotide: char, input: &str) -> usize { input.chars().filter(|&c| c == nucleotide).count() @@ -8,13 +7,7 @@ pub fn count(nucleotide: char, input: &str) -> usize { pub fn nucleotide_counts(input: &str) -> HashMap { let mut map: HashMap = "ACGT".chars().map(|c| (c, 0)).collect(); for nucleotide in input.chars() { - match map.entry(nucleotide) { - Entry::Vacant(view) => view.insert(1), - Entry::Occupied(mut view) => { - *view.get_mut() += 1; - view.into_mut() - } - }; + *map.entry(nucleotide).or_insert(0) += 1; } map }