题目链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array-ii/
与原题不同,这道题每个元素可出现1-2次,所以要用一个额外的count记录当前元素出现次数。
代码如下:
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if(nums.size() == 0) {
return 0;
}
int count = 1;
for(int i = 1; i < nums.size(); i++) {
if(nums[i] == nums[i - 1]) {
count++;
//printf("now = %d, count = %d\n", nums[i], count);
if(count > 2) {
nums.erase(nums.begin() + i);
i--;
}
} else {
count = 1;
//printf("now = %d, count = %d\n", nums[i], count);
}
}
return nums.size();
}
};