classSolution{public:boolhasGroupsSizeX(vector<int>& deck){int N = deck.size();
unordered_map<int,int> ans;for(int i =0;i < N;++i)
ans[deck[i]]++;for(int X =2;X <= N;++X){if(N%X ==0){bool flag =true;for(auto p : ans){if(p.second%X !=0){
flag =false;break;}}if(flag)returntrue;}}returnfalse;}};
方法二:最大公约数
classSolution{public:boolhasGroupsSizeX(vector<int>& deck){
unordered_map<int,int> ans;for(int i =0;i < deck.size();++i)
ans[deck[i]]++;int g = ans.begin()->second;for(auto p : ans)
g =gcd(g,p.second);return g >=2;}};