网站开发招标公告,沈阳网络推广优化,wordpress 连接数据库,网站建设完成汇报给你一个下标从 0 开始的整数数组 nums #xff0c;如果满足下述条件#xff0c;则认为数组 nums 是一个 美丽数组 #xff1a;
nums.length 为偶数对所有满足 i % 2 0 的下标 i #xff0c;nums[i] ! nums[i 1] 均成立
注意#xff0c;空数组同样认为是美丽数组。
你…给你一个下标从 0 开始的整数数组 nums 如果满足下述条件则认为数组 nums 是一个 美丽数组
nums.length 为偶数对所有满足 i % 2 0 的下标 i nums[i] ! nums[i 1] 均成立
注意空数组同样认为是美丽数组。
你可以从 nums 中删除任意数量的元素。当你删除一个元素时被删除元素右侧的所有元素将会向左移动一个单位以填补空缺而左侧的元素将会保持 不变 。
返回使 nums 变为美丽数组所需删除的 最少 元素数目。
思路一贪心
c解法
class Solution {
public:int minDeletion(vectorint nums) {int n nums.size();int flag -1;int ans 0;for (int i 0; i n; i) {if (flag -1) {flag nums[i];}if (nums[i] ! last) {ans 2;flag -1;}}return n - ans;}
};
分析
根据美丽数组的定义前后两个数不同的即可组成美丽数组且数组长度为偶数每次记录两个当两个数不相等时放入美丽数组得到最长数组长度
总结
本题考察贪心思路根据定义将不同的两个数不断放入数组最后得到最大长度数组