当前位置: 首页 > wzjs >正文

郑州做网站哪家最好怎么做网站描述

郑州做网站哪家最好,怎么做网站描述,平面设计网站培训中心,自己也可以免费轻松创建一个网站【LetMeFly】3201.找出有效子序列的最大长度 I:分类统计贪心(一次遍历) 力扣题目链接:https://leetcode.cn/problems/find-the-maximum-length-of-valid-subsequence-i/ 给你一个整数数组 nums。 nums 的子序列 sub 的长度为 x…

【LetMeFly】3201.找出有效子序列的最大长度 I:分类统计+贪心(一次遍历)

力扣题目链接:https://leetcode.cn/problems/find-the-maximum-length-of-valid-subsequence-i/

给你一个整数数组 nums

nums 的子序列 sub 的长度为 x ,如果其满足以下条件,则称其为 有效子序列

  • (sub[0] + sub[1]) % 2 == (sub[1] + sub[2]) % 2 == ... == (sub[x - 2] + sub[x - 1]) % 2

返回 nums最长的有效子序列 的长度。

一个 子序列 指的是从原数组中删除一些元素(也可以不删除任何元素),剩余元素保持原来顺序组成的新数组。

 

示例 1:

输入: nums = [1,2,3,4]

输出: 4

解释:

最长的有效子序列是 [1, 2, 3, 4]

示例 2:

输入: nums = [1,2,1,1,2,1,2]

输出: 6

解释:

最长的有效子序列是 [1, 2, 1, 2, 1, 2]

示例 3:

输入: nums = [1,3]

输出: 2

解释:

最长的有效子序列是 [1, 3]

 

提示:

  • 2 <= nums.length <= 2 * 105
  • 1 <= nums[i] <= 107

解题方法:分类统计

子序列如果是有效子序列(相邻两个元素之和 的奇偶性相同),只有以下三种可能:

  1. 全奇
  2. 全偶
  3. 一奇一偶交替排列

怎么一次遍历分别统计出这三种情况最长有效子序列呢?

  • 使用一个变量oddoddodd,统计数组钟奇数元素的个数(那么偶数元素的个数就是len(nums)−oddlen(nums) - oddlen(nums)odd);
  • 使用一个变量lastlastlast,代表上一个选中元素是奇是偶;并使用一个元素cntcntcnt统计选中了多少个奇偶交替排列的元素。

所谓贪心,体现在当方案为奇偶交替时,遇到和上一个元素奇偶不同的元素一定选(不选白不选),遍历结束则能得到奇偶交替方案的最长长度。

举个例子:2,0,3,5,42, 0, 3, 5, 42,0,3,5,4这个数组,遍历时遇到2,选还是不选?

选,不选干嘛以奇数开头吗?没必要,以奇数开头不就少选了个偶数吗。

而一次遍历过程中顺便统计下奇数个数就很简单了。

  • 时间复杂度O(x)O(x)O(x)
  • 空间复杂度O(1)O(1)O(1)

AC代码

C++
/** @Author: LetMeFly* @Date: 2025-07-16 13:16:29* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-07-16 13:19:44*/
#if defined(_WIN32) || defined(__APPLE__)
#include "_[1,2]toVector.h"
#endifclass Solution {
public:int maximumLength(vector<int>& nums) {int ans = 0;int odd = 0;bool last = nums[0] % 2 ? false : true;for (int t : nums) {if (t % 2) {odd++;if (!last) {last = true;ans++;}} else {if (last) {last = false;ans++;}}}return max(ans, max(odd, int(nums.size()) - odd));}
};
Python
'''
Author: LetMeFly
Date: 2025-07-16 13:16:29
LastEditors: LetMeFly.xyz
LastEditTime: 2025-07-16 13:36:53
'''
from typing import Listclass Solution:def maximumLength(self, nums: List[int]) -> int:ans = odd = 0last = False if nums[0] % 2 else Truefor t in nums:if t % 2:odd += 1if not last:last = Trueans += 1else:if last:last = Falseans += 1return max(ans, odd, len(nums) - odd)
Java
/** @Author: LetMeFly* @Date: 2025-07-16 13:16:29* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-07-16 13:41:23*/
class Solution {public int maximumLength(int[] nums) {int ans = 0;int odd = 0;boolean last = nums[0] % 2 == 0;for (int t : nums) {if (t % 2 == 0) {if (last) {last = false;ans++;}} else {odd++;if (!last) {last = true;ans++;}}}return Math.max(ans, Math.max(odd, nums.length - odd));}
}
Go
/** @Author: LetMeFly* @Date: 2025-07-16 13:16:29* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-07-16 13:40:18*/
package mainfunc maximumLength(nums []int) (ans int) {odd := 0last := nums[0] % 2 == 0for _, t := range nums {if t % 2 == 0 {if last {last = falseans++}} else {odd++if !last {last = trueans++}}}return max(ans, max(odd, len(nums) - odd))
}

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

千篇源码题解已开源


文章转载自:

http://V8IveuKW.bfhrj.cn
http://yHeJmA9N.bfhrj.cn
http://CdS2TQ0H.bfhrj.cn
http://2kb0Bz7V.bfhrj.cn
http://SRbxizDi.bfhrj.cn
http://GLoGBRsM.bfhrj.cn
http://LGXcXaNC.bfhrj.cn
http://cGDkAh2B.bfhrj.cn
http://BEk469hq.bfhrj.cn
http://mO6ImuNo.bfhrj.cn
http://j8mdlbsc.bfhrj.cn
http://j69rsK8R.bfhrj.cn
http://esitbLtL.bfhrj.cn
http://BYjMmZJZ.bfhrj.cn
http://0P4OLkDX.bfhrj.cn
http://PLjsyTuF.bfhrj.cn
http://IYX34bSb.bfhrj.cn
http://MlZjinWg.bfhrj.cn
http://YwGNWPGy.bfhrj.cn
http://Vd46oz0e.bfhrj.cn
http://V1Ybyk27.bfhrj.cn
http://8AqXB2di.bfhrj.cn
http://i9RbiZ0v.bfhrj.cn
http://nzHvjLWd.bfhrj.cn
http://jE1QavAi.bfhrj.cn
http://W13B3PCW.bfhrj.cn
http://18dFi821.bfhrj.cn
http://a91hdEkT.bfhrj.cn
http://jiMc6U8X.bfhrj.cn
http://vFS5wyvx.bfhrj.cn
http://www.dtcms.com/wzjs/652198.html

相关文章:

  • 东莞品牌营销型网站建设建网站什么语言
  • dedecms5.7装饰网站模板seo都用在哪些网站
  • 建设银行网站怎么登陆不了seo专业为网站建设
  • 建购物网站 教程做网站时候如果添加微信代码
  • 什么网站建设最简单wordpress主题添加一个自定义页面
  • 泗阳县住房和建设局网站网站制作容易吗
  • 江宁网站建设哪家好咖啡网页设计素材
  • 建材网站模板青海网站建设公司电话
  • ui做网站流程服务器cpu天梯图
  • 电子商务网站建设合同范本中国公路工程建设网站
  • 织梦网站制作费用自媒体wordpress主题
  • 做好网站建设总结网站加载进度条
  • 网站重购如何给网站添加ico
  • 怎样在工商局网站上做网登储煤棚网架公司
  • 齐齐哈尔北京网站建设湖南网站设计亮点
  • 如何提高网站首页权重南京做信息登记公司网站
  • 蔡家坡网站开发哪项不属于网站架构
  • wordpress影视自采集模板seo官网制作规划
  • 站长统计app下载大全旅游酒店网站建设
  • 在国外做盗版网站视频链接怎么制作
  • 做磨砂卡贴的网站石家庄建设局网站怎么打不开
  • 宁波企业品牌网站建设东莞清溪镇做网站公司
  • 重点建设学科网站徐州建站费用
  • 人才网站开发方案克拉玛依市住房和建设局网站
  • 温州大凯工艺品有限公司英文网站广东建设工程造价管理协会网站
  • 网站空间和云服务器钓鱼网站制作教程视频
  • 利用网站源代码建立网站开发软件的公司叫什么
  • 专业建站服务建站网网站建设有什么看法
  • 网站建设网络推广加盟网站建设功能模块
  • 怎么授权小说做游戏网站做服装要看国外哪些网站好