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

学习网站模板下载网站建设丨找王科杰效果好

学习网站模板下载,网站建设丨找王科杰效果好,国际羽联最新排名,做视频网站用什么服务器配置给你一个由 正 整数组成的数组 nums 。 如果 nums 的子数组中位于 不同 位置的每对元素按位 与(AND)运算的结果等于 0 ,则称该子数组为 优雅 子数组。 返回 最长 的优雅子数组的长度。 子数组 是数组中的一个 连续 部分。 注意:长…

给你一个由 正 整数组成的数组 nums 。

如果 nums 的子数组中位于 不同 位置的每对元素按位 与(AND)运算的结果等于 0 ,则称该子数组为 优雅 子数组。

返回 最长 的优雅子数组的长度。

子数组 是数组中的一个 连续 部分。

注意:长度为 1 的子数组始终视作优雅子数组。

示例 1:

输入:nums = [1,3,8,48,10]
输出:3
解释:最长的优雅子数组是 [3,8,48] 。子数组满足题目条件:

  • 3 AND 8 = 0
  • 3 AND 48 = 0
  • 8 AND 48 = 0
    可以证明不存在更长的优雅子数组,所以返回 3 。
    示例 2:

输入:nums = [3,1,5,11,13]
输出:1
解释:最长的优雅子数组长度为 1 ,任何长度为 1 的子数组都满足题目条件。

提示:

1 <= nums.length <= 105^55
1 <= nums[i] <= 109^99

滑动窗口,保证窗口内是优雅子数组即可:

class Solution {
public:int longestNiceSubarray(vector<int>& nums) {int left = 0;// 窗口内所有元素的或int cur = 0;int ans = 0;for (int i = 0; i < nums.size(); ++i) {// 如果新加入窗口的元素和当前窗口内的任意元素有相同的位为1// 说明当前元素加入窗口后,与窗口内某个元素的and就会非0,就不是优雅子数组了while (cur & nums[i]) {// 去掉窗口左边的元素,此处也可改成:// cur ^= nums[left];cur &= ~nums[left];++left;}cur |= nums[i];ans = max(ans, i - left + 1);}return ans;}
};

如果nums的长度为n,则此算法时间复杂度为O(n),空间复杂度为O(1)。

http://www.dtcms.com/wzjs/578244.html

相关文章:

  • 手机网站 切图网站建设必须提供良好的用户体验
  • 网站建设哪家好服务餐饮品牌设计论文
  • 外贸多语言网站建设wordpress抓取淘宝价格
  • 网站建设递进发展趋势西安公司建一个网站需要多少钱
  • 网站建设与服务技能实训设计iphone手机网站
  • 网站规划和布局网站建设 pdf
  • 专业做网站公司哪家技术好万户网站后台控制中心
  • 福建宏盛建设集团网站百度新闻发布
  • 北京网站搭建公司排名网站建设的技巧有哪些方面
  • 平面设计网站知乎东道设计公司官网招聘
  • 站群系统开发华为荣耀手机最新款
  • 徐州市专业做网站的公司低价格网站建设
  • 建设和管理环保网站临沂网站制作软件
  • 安阳市城乡建设规划局网站2022年5月国内重大新闻
  • 网站备案信息查询接口群晖wordpress 映射
  • 西宁做网站的网络公司wordpress 优享
  • 做网站用什么配置笔记本如何做一个简单的网站
  • 网站logo做黑页wordpress使用模板
  • 做微商有卖鞋子的网站吗青岛市建设工程信息网官网
  • 个人网站 摄影展示大连市网站制作电话
  • 做网站的人多吗荆门网站开发有哪些
  • 公司网站建设费维护费会计分录徐州网站建设案例
  • 营销型企业网站功能西安网站开发外包公司有
  • 温州高端品牌网站建设263邮箱注册
  • 绍兴网站制作多少钱个人怎么制作网站
  • 怎样做已有网站的编辑维护wordpress如何配置伪静态
  • 外观设计网站谷歌seo优化技巧
  • 福州网站建设技术支持网站的设计风格
  • 欧美企业网站模板西安官网seo哪家公司好
  • 房产类网站建设单页网站内链接