cppclass Solution {
public:
int minDeletion(vector<int>& nums) {
const int n = nums.size();
// 贪心
// 直接从左往右顺序检验
// 如果从右往左的话要不断切换后续整体的奇偶
// 而从左往右的话左侧变换的就不会在动了
int cnt = 0;
for (int i = 0; i < n; i += 1) {
if ((i - cnt) % 2 != 0) {
continue;
}
if (i + 1 >= n) {
continue;
}
if (nums[i] == nums[i + 1]) {
cnt += 1;
}
}
// 最后保证是偶数长度
return cnt + ((n - cnt) % 2);
}
};
本文作者:yowayimono
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!