Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- void backtrack(vector<vector<int>> &ans,vector<int> nums,vector<int> temp,int start){
- ans.push_back(temp);
- for(int i=start;i<nums.size();i++){
- if(i>start && nums[i]==nums[i-1]){
- continue;
- }
- temp.push_back(nums[i]);
- backtrack(ans,nums,temp,i+1);
- temp.pop_back();
- }
- }
- vector<vector<int>> subsetsWithDup(vector<int>& nums) {
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- sort(nums.begin(),nums.end());
- vector<vector<int>> ans;
- backtrack(ans,nums,{},0);
- return ans;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement