Guest User

Untitled

a guest
Aug 18th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. fn main() {
  2. println!("{}", equalize(vec![3,3,2,1,3])); // 2
  3. println!("{}", equalize(vec![1,2,5,4,6,3])); // 5
  4. }
  5.  
  6. fn equalize(mut list: Vec<i32>) -> u32 {
  7. // Get the maximum occurring element
  8. let max_ele = match list.iter().max_by_key(|&x| list.iter().filter(|&a| a == x).count()) {
  9. Some(e) => e,
  10. None => return (list.len() -1) as u32,
  11. };
  12. // Filter out the remaining and count
  13. list.iter().filter(|&x| x != max_ele).count() as u32
  14. }
Add Comment
Please, Sign In to add comment