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.49 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(list: Vec<i32>) -> u32 {
  7. // Get the maximum occurring element
  8. let max_ele = match list
  9. .iter()
  10. .max_by_key(|&x| list.iter().filter(|&a| a == x).count())
  11. {
  12. Some(e) => e,
  13. None => return (list.len() - 1) as u32,
  14. };
  15. // Filter out the remaining and count
  16. list.iter().filter(|&x| x != max_ele).count() as u32
  17. }
Add Comment
Please, Sign In to add comment