Group the People Given the Group Size They Belong To LeetCode solution in C++
1class Solution {2public:3vector<vector<int>> groupThePeople(vector<int> &groupSizes) {4vector<vector<int>> ans;5unordered_map<int, vector<int>> store;67for (int i = 0; i < groupSizes.size(); i++) {8if (store[groupSizes[i]].size() == groupSizes[i]) {9ans.push_back(store[groupSizes[i]]);10store[groupSizes[i]].clear();11}12store[groupSizes[i]].push_back(i);13}1415for (auto &x : store) {16ans.push_back(x.second);17}18return ans;19}20};