Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.41 KB | None | 0 0
  1. fn main() {
  2. let all_eq = vec![2,2,2,2];
  3. let not_eq = vec![1,6,5,1,6];
  4.  
  5. assert!(is_all_same(all_eq));
  6. assert_eq!(is_all_same(not_eq), false);
  7. }
  8.  
  9.  
  10. fn is_all_same(vec: Vec<usize>) -> bool {
  11. vec.iter().fold((true, None), {|acc, elem| {
  12. if let Some(prev) = acc.1 {
  13. (acc.0 && (prev == elem), Some(elem))
  14. } else {
  15. (true, Some(elem))
  16. }
  17. }
  18. }).0
  19. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement