2026-08-12:统计下标的相反奇偶性得分。用go语言,给定一个整数数组,需要为数组中的每个位置计算一个分数。这个分数等于:在当前索引右侧的所有元素中,与当前元素奇偶性不同(即一个是奇数,另一个是

发布时间:2026/8/12 12:19:49

2026-08-12:统计下标的相反奇偶性得分。用go语言,给定一个整数数组,需要为数组中的每个位置计算一个分数。这个分数等于:在当前索引右侧的所有元素中,与当前元素奇偶性不同(即一个是奇数,另一个是
2026-08-12统计下标的相反奇偶性得分。用go语言给定一个整数数组需要为数组中的每个位置计算一个分数。这个分数等于在当前索引右侧的所有元素中与当前元素奇偶性不同即一个是奇数另一个是偶数的元素个数。最终返回一个与原数组等长的数组按顺序给出每个索引对应的分数。1 nums.length 100。1 nums[i] 100。输入 nums [1,2,3,4]。输出 [2,1,1,0]。解释nums[0] 1为奇数。因此下标 j 1 和 j 3 满足条件所以下标 0 的分数为 2。nums[1] 2为偶数。因此下标 j 2 满足条件所以下标 1 的分数为 1。nums[2] 3为奇数。因此下标 j 3 满足条件所以下标 2 的分数为 1。nums[3] 4为偶数。因此没有下标满足条件所以下标 3 的分数为 0。因此answer [2, 1, 1, 0]。题目来自力扣3917。算法的大体过程步骤一初始化数据结构获取输入数组nums的长度n。创建一个与nums等长的整型切片数组ans用来存放每个位置最终计算出的分数。创建一个长度为 2 的整型数组cnt用来动态记录在从右向左遍历过程中已经遇到过的偶数和奇数的个数。通常约定cnt[0]存放偶数个数cnt[1]存放奇数个数初始都为 0。步骤二从右向左遍历数组使用循环索引i从n-1递减到0逐步处理每一个元素。这么做的目的是保证当我们处理位置i时所有在它右侧的元素即索引大于i的元素都已经被统计进了cnt中。对于当前索引i执行以下子步骤判断当前元素的奇偶性用nums[i] 1得到当前数字的奇偶标记x。如果nums[i]是奇数x为1如果是偶数x为0。查询右侧相反奇偶性的个数题目要求的分数是在当前索引右侧与当前元素奇偶性不同的元素个数。既然当前元素的奇偶性是x那么与之相反的奇偶性就是x ^ 1异或运算将0变1、1变0。在cnt数组中cnt[x ^ 1]存放的恰好就是已经扫描过的右侧元素中奇偶性为x ^ 1的个数。把cnt[x ^ 1]的值赋给ans[i]即得到位置i的得分。更新计数器当前元素自身现在也要成为“右侧元素”的一部分供更左侧的索引查询。因此将它按奇偶性计入cnt中即执行cnt[x]。这样当遍历到更左边的索引时当前元素就已经被正确统计在内了。步骤三返回结果循环结束后ans中已经按顺序存储了每个索引对应的分数直接返回ans即可。具体执行示例输入 [1,2,3,4]初始cnt [0, 0]i3nums[3]4偶数x0右侧相反奇偶性个数cnt[1]0ans[3]0然后cnt[0]加 1 →cnt[1,0]。i2nums[2]3奇数x1右侧相反奇偶性个数cnt[0]1ans[2]1然后cnt[1]加 1 →cnt[1,1]。i1nums[1]2偶数x0右侧相反奇偶性个数cnt[1]1ans[1]1然后cnt[0]加 1 →cnt[2,1]。i0nums[0]1奇数x1右侧相反奇偶性个数cnt[0]2ans[0]2然后cnt[1]加 1 →cnt[2,2]。最终得到ans [2, 1, 1, 0]与题目描述一致。复杂度分析时间复杂度算法只对数组进行了一次从右向左的遍历循环内部只包含常数次位运算、数组访问和自增操作。整体时间复杂度为O(n)其中 n 为数组长度。额外空间复杂度除了输入数组外算法额外使用了一个长度为 n 的结果数组ans和一个固定大小为 2 的计数数组cnt。如果不将输出数组计入额外空间则辅助空间为O(1)若将必要的输出结构也视为额外空间则总额外空间复杂度为O(n)。一般在该类问题中输出数组是必需的因此可以说总的额外空间复杂度是O(n)。Go完整代码如下packagemainimport(fmt)funccountOppositeParity(nums[]int)[]int{n:len(nums)ans:make([]int,n)cnt:[2]int{}fori:n-1;i0;i--{x:nums[i]1// x 的奇偶性ans[i]cnt[x^1]// 查询右侧奇偶性不等于 x即 x^1的元素个数cnt[x]}returnans}funcmain(){nums:[]int{1,2,3,4}result:countOppositeParity(nums)fmt.Println(result)}Python完整代码如下# -*-coding:utf-8-*-fromtypingimportListdefcount_opposite_parity(nums:List[int])-List[int]:nlen(nums)ans[0]*n cnt[0,0]# cnt[0] 记录右侧偶数个数cnt[1] 记录右侧奇数个数foriinrange(n-1,-1,-1):paritynums[i]1# 当前元素的奇偶性0为偶1为奇ans[i]cnt[parity^1]# 右侧与当前奇偶性不同的元素个数cnt[parity]1returnansif__name____main__:nums[1,2,3,4]resultcount_opposite_parity(nums)print(result)C完整代码如下#includeiostream#includevectorstd::vectorintcountOppositeParity(conststd::vectorintnums){intnnums.size();std::vectorintans(n);intcnt[2]{0,0};// cnt[0] 偶数个数cnt[1] 奇数个数for(intin-1;i0;--i){intparitynums[i]1;// 当前元素的奇偶性0偶1奇ans[i]cnt[parity^1];// 右侧不同奇偶性的元素个数cnt[parity];}returnans;}intmain(){std::vectorintnums{1,2,3,4};std::vectorintresultcountOppositeParity(nums);for(intx:result){std::coutx ;}std::coutstd::endl;return0;}

相关新闻

Windows 10下OpenClaw与DeepSeek集成开发指南

Windows 10下OpenClaw与DeepSeek集成开发指南

2026/8/12 12:19:49

1. OpenClaw与DeepSeek集成概述OpenClaw作为一款新兴的本地化AI开发框架,近期在技术社区引发了广泛讨论。它最大的特点在于能够将各类AI模型以标准化接口形式接入到本地开发环境中。而DeepSeek作为国产大模型的代表产品,其V4版本在代码生成和自然语言处理…

终极指南:如何免费解锁Cursor Pro功能,告别AI编程限制

终极指南:如何免费解锁Cursor Pro功能,告别AI编程限制

2026/8/12 12:09:49

终极指南:如何免费解锁Cursor Pro功能,告别AI编程限制 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reach…

LangGraph与LangSmith实战:构建可观测的JS/TS智能体工作流

LangGraph与LangSmith实战:构建可观测的JS/TS智能体工作流

2026/8/12 12:09:49

1. 项目概述:为什么是 LangGraph 与 LangSmith?如果你正在用 JavaScript 或 TypeScript 捣鼓大语言模型应用,大概率已经体验过 LangChain 带来的便利。它能帮你快速串联起提示词、模型和工具。但当你开始构建更复杂的应用,比如需要…

DSL到Vue代码转换:构建低代码平台核心引擎的设计与实现

DSL到Vue代码转换:构建低代码平台核心引擎的设计与实现

2026/8/12 17:00:02

1. 项目概述:从DSL到Vue代码的“翻译官”在构建一个现代化的、AI驱动的Vue3应用开发平台时,我们总会遇到一个核心矛盾:如何让非专业开发者或业务专家也能高效地参与应用构建,同时又保证产出的代码具备专业水准、易于维护&#xff…

Python实战 | 只需“4步”入门网络爬虫(有福利哦)

Python实战 | 只需“4步”入门网络爬虫(有福利哦)

2026/8/12 17:00:02

网络爬虫(Web), 是借助网址去觅得网络里的数据, 接着凭借目标去剖析数据, 进而存储目标信息。此过程能够靠自动化程序予以达成, 其行径仿若一只蜘蛛。彼蜘蛛于互联网上来回攀爬, 一个个网页宛如一张张蜘蛛网。如此这般, 蜘蛛便能经由一个网页爬行至另外一…

计算机组成原理核心考点解析:Cache、流水线与复习策略

计算机组成原理核心考点解析:Cache、流水线与复习策略

2026/8/12 17:00:02

1. 项目概述:一份“回忆版”试卷的价值与挑战又到了期末季,对于计算机相关专业的学生来说,《计算机组成原理》这门课的分量,大家心里都清楚。它不像某些编程课,靠临阵磨枪写几个Demo就能过关。组成原理考的是你对整个计…

数据结构-双向循环链表

数据结构-双向循环链表

2026/8/12 17:00:02

双向循环链表(哨兵位)踩坑全复盘:从运行崩溃到接口统一 写在前面 在学习完单链表之后,我继续实现了带哨兵位的双向循环链表。相比单链表,双向链表的每个节点多了一个 prev 指针,可以同时向前、向后访问&a…

Nemotron 3.5 Lightning + NeMo Switchyard深度解析:30B MoE仅3B活跃参数,从蒸馏到路由的AI Agent执行层新范式

Nemotron 3.5 Lightning + NeMo Switchyard深度解析:30B MoE仅3B活跃参数,从蒸馏到路由的AI Agent执行层新范式

2026/8/12 17:00:02

引言:当AI Agent的"执行层"成为瓶颈 2026年8月11日,NVIDIA发布了Nemotron 3.5 Lightning开源模型和NeMo Switchyard模型路由库。这不是一次普通的模型发布——它直指当前AI Agent系统中最痛的一个问题:执行层成本。 任何一个长期运行的AI Agent,其生命周期中的…

syd sandbox的使用

syd sandbox的使用

2026/8/12 16:50:02

syd --version syd 3.51.0 (Crazy Goldberg) 这个sanbox感觉还可以。就是命令行之类的极其复杂。最后是AI通过一边看源码一边调试的。 比如***表示全部匹配 如果是直接bash运行 !那一行要加单引号。比如 -m allow/net/bind127.0.0.1!13337否则!会被展开 https://gitlab.ex…

比较好的亚太EMBA,问了6位校友师资差别真的挺大

比较好的亚太EMBA,问了6位校友师资差别真的挺大

2026/8/12 7:11:29

比较好的亚太EMBA核心差异先看什么?对于希望兼顾工作与系统管理能力提升的亚太区高管而言,筛选匹配度高的EMBA项目时,师资配置是决定学习体验与实际收获的核心要素之一。我们结合3-4个公开信息透明、办学历史较长的亚太区主流EMBA项目特点&am…

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

2026/8/11 8:44:43

备考海外游学的亚洲EMBA面试,核心要围绕项目国际化设计逻辑、个人跨文化管理经验匹配度两个维度准备,避免把游学模块等同于普通旅游参访的认知偏差。不少备考者花3个月对比6份资料,却容易忽略面试官对“国际视野落地能力”的考察——比如香港…

比较好的国内EMBA,问了二十位校友聊透人脉价值

比较好的国内EMBA,问了二十位校友聊透人脉价值

2026/8/11 15:57:54

比较好的国内EMBA核心差异体现在哪些方面?比较好的国内EMBA的核心长期价值,很大程度上依托于校友网络的连接质量与资源生态的活跃度,这也是不少高管在择校时优先考量的因素。我们结合3-4个市场关注度较高的项目公开信息,从课程、师…

告别模组冲突!5步掌握《神界:原罪2》模组管理的终极秘诀

告别模组冲突!5步掌握《神界:原罪2》模组管理的终极秘诀

2026/8/12 9:39:37

告别模组冲突!5步掌握《神界:原罪2》模组管理的终极秘诀 【免费下载链接】DivinityModManager A mod manager for Divinity: Original Sin - Definitive Edition. 项目地址: https://gitcode.com/gh_mirrors/di/DivinityModManager 你是否曾经为《…

如何用Charge Limiter延长MacBook电池寿命:终极保护指南

如何用Charge Limiter延长MacBook电池寿命:终极保护指南

2026/8/12 9:39:37

如何用Charge Limiter延长MacBook电池寿命:终极保护指南 【免费下载链接】charge-limiter macOS app to set battery charge limit for Intel MacBooks 项目地址: https://gitcode.com/gh_mirrors/ch/charge-limiter 还在为MacBook电池健康度下降而烦恼吗&am…

推三返一模式5.0版本系统开发

推三返一模式5.0版本系统开发

2026/8/12 9:39:37

推三返一模式5.0版本系统开发要点编辑:araolin(私域邦网络土土哥)模式核心逻辑 推三返一是一种促销或分销机制,用户推荐三人完成特定行为(如购买、注册),推荐人可获得返利或奖励。5.0版本通常在…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/8 5:07:31

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/9 13:42:46

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/8 2:30:15

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…