Well, an extension of Remove Duplicates from Sorted Array.
The program is fairly similar to that in .
1 int removeDuplicates(vector & nums) {2 if (nums.size() <= 2) return nums.size();3 int pos = 1;4 for (int i = 2; i < nums.size(); i++)5 if (nums[i] != nums[pos] || nums[i] != nums[pos - 1])6 nums[++pos] = nums[i];7 return pos + 1;8 }
After playing with it for a while, you may notice that the code can be easily extended to accommodate 3, 4, ... duplicates by modifying lines 3, 4, 5 in a similar manner.