尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
leetcode 3513. 不同 XOR 三元组的数目 I 中等
给你一个长度为n的整数数组nums其中nums是范围[1, n]内所有数的排列。XOR 三元组定义为三个元素的异或值nums[i] XOR nums[j] XOR nums[k]其中i j k。返回所有可能三元组(i, j, k)中不同的 XOR 值的数量。排列是一个集合中所有元素的重新排列。示例 1输入nums [1,2]输出2解释所有可能的 XOR 三元组值为(0, 0, 0) → 1 XOR 1 XOR 1 1(0, 0, 1) → 1 XOR 1 XOR 2 2(0, 1, 1) → 1 XOR 2 XOR 2 1(1, 1, 1) → 2 XOR 2 XOR 2 2不同的 XOR 值为{1, 2}因此输出为 2。示例 2输入nums [3,1,2]输出4解释可能的 XOR 三元组值包括(0, 0, 0) → 3 XOR 3 XOR 3 3(0, 0, 1) → 3 XOR 3 XOR 1 1(0, 0, 2) → 3 XOR 3 XOR 2 2(0, 1, 2) → 3 XOR 1 XOR 2 0不同的 XOR 值为{0, 1, 2, 3}因此输出为 4。提示1 n nums.length 10^51 nums[i] nnums是从1到n的整数的一个排列。分析异或是不进位加法两个相同的数异或的结果等于 0而 0 异或任何值都等于那个值本身。因此三元组实际上只有取三个不同的数才能得到一个新的数其它情况的值要么是 0要么是其中一个值本身。当 n3 时因为没有三个不同的数因此只能得到 01······n当 n 大于等于 3 时不妨设最大值 n 的取值范围为 [2^k, 2^(k1)-1 )此时可以构造出 01······nn1······ 2^(k1)-1。因此答案为 2^(k1)即大于 n 的最小的 2 的幂。class Solution { public: int uniqueXorTriplets(vectorint nums) { int nnums.size(),maxnnums[0]; if(n3)return n; for(int i1;in;i) maxnmax(maxn,nums[i]); int cnt2; while(cntmaxn)cnt*2; return cnt; } };
RELATED

相关推荐

Copilot直接读取Excel,一键生成完整数据汇报PPT

Copilot直接读取Excel,一键生成完整数据汇报PPT

每次做完Excel数据分析,最煎熬的环节来了:截图、复制数字、手动插入图表、调整排版、梳理汇报逻辑。十几页的数据PPT,往往要耗费1-2小时反复调整。PowerPoint Copilot打通Excel与PPT链路,无需手动搬运数据。将云端Excel文件直接引…

📅 2026/10/8 18:45:49
卷积扰动认证训练:从数学原理到工程实践的可验证鲁棒性指南

卷积扰动认证训练:从数学原理到工程实践的可验证鲁棒性指南

在深度学习安全领域,我们常常面临一个现实困境:模型在实验室表现优异,但在真实世界中遇到轻微干扰就可能完全失效。传统对抗训练虽然能提升鲁棒性,但往往缺乏数学上的可验证保证——这正是"Certified Training for Convoluti…

📅 2026/9/22 7:10:53
VRoid Studio汉化插件:原理、安装与使用全指南

VRoid Studio汉化插件:原理、安装与使用全指南

1. 项目概述:为什么我们需要VRoid Studio汉化插件? 如果你是一个刚接触VRoid Studio的创作者,面对满屏的日文或英文界面,是不是感觉有点无从下手?VRoid Studio作为一款功能强大的3D角色建模软件,其核心价值…

📅 2026/10/9 14:52:07
MORE NEWS

更多资讯

📰

分布式系统消息队列幂等性与顺序性设计实战

1. 消息队列幂等性设计实战在分布式系统中,消息队列的幂等性处理是保证数据一致性的关键环节。作为一名经历过多次线上事故的后端工程师,我想分享几种经过实战检验的幂等处理方案。1.1 幂等性问题的本质消息重复通常由四种场景触发:生产者重试…

📰

预编译 jsoncpp 安装配置与链接排错实战

简介:这份已编译的 jsoncpp 压缩包面向使用 C 与 Visual Studio 处理 JSON 解析、生成和数据交换的开发者,省去从源码编译的环节,适合需要在项目中快速集成轻量级 JSON 能力的初、中级开发场景。包内共 10 个文件,以 8 个 .h 头文…

📰

鸿蒙6.0存储技术演进:AppStorageV2与PersistenceV2解析

1. 鸿蒙6.0存储技术演进背景作为鸿蒙系统核心架构师团队的一员,我见证了HarmonyOS存储子系统从3.0到6.0的完整迭代过程。在鸿蒙6.0中,AppStorageV2和PersistenceV2的引入绝非简单的API升级,而是响应分布式场景下数据管理新范式的重要变革。传…

📰

ExpressSpreadSheet源码编译与公式引擎避坑

简介:面向Delphi与C Builder开发者的DevExpress ExpressSpreadSheet v1.38源代码包,适合希望深入理解电子表格组件内部实现、开展二次开发或优化现有应用的中高级程序员。压缩包采用rar格式,共382个文件、约2.81MB,以pas源码单元、…

📰

VS2017预编译GDAL接入与排错:ABI核对到坐标转换

简介:面向使用 Visual Studio 2017 进行 GIS 或 C 开发的工程师,这份已编译完成的 GDAL 库免去了 CMake 配置、依赖处理与驱动裁剪等繁琐编译环节,适合需要快速验证栅格/矢量读写能力、搭建原型或排查环境问题的开发者。压缩包约 103.88MB&am…

📰

软件需求规格说明书SRS模板:需求分析、功能与非功能需求及评审签字指南

简介:这份《软件需求规格说明书模板》面向需求分析师、项目经理、开发与测试人员及计算机专业学生,用于解决SRS文档结构混乱、条目缺失、评审难以对齐的问题,可作为项目立项与需求评审阶段的直接参照。压缩包内为1个doc文档,约1.3…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬