1use std::collections::HashMap;23impl Solution {4fn gcd(mut a: i32, mut b: i32) -> i32 {5while b > 0 {6let tmp = a;7a = b;8b = tmp % b;9}10return a;11}1213pub fn has_groups_size_x(deck: Vec<i32>) -> bool {14let mut data = HashMap::new();15for v in deck {16*data.entry(v).or_insert(0) += 1;17}1819let mut val = 0;20for (_, v) in data {21val = Self::gcd(v, val);22}23return val > 1;24}25}