力扣2401.最长优雅子数组

力扣2401.最长优雅子数组

  • 用mask处理此前所有数的1的位置

    • 删去nums[j]时用 ^ 是因为之前^过 再^一次就没了
cpp 复制代码
  class Solution {
  public:
      int longestNiceSubarray(vector<int>& nums) {
          int res=0;
          int mask = 0;
          for(int i=0,j=0;i<nums.size();i++)
          {
              while((mask & nums[i]) != 0) mask ^= nums[j++];
              //再把nums[i] ^上
              mask ^= nums[i];
              res = max(res,i-j+1);
          }
          return res;
      }
  };
相关推荐
xxxxxmy3 分钟前
相向双指针—三数之和
python·算法·相向双指针
Blossom.1184 分钟前
基于知识图谱+LLM的工业设备故障诊断:从SQL日志到可解释推理的实战闭环
人工智能·python·sql·深度学习·算法·transformer·知识图谱
conkl8 分钟前
梅森旋转算法深度解析:构建更健壮的前端请求体系
前端·算法·状态模式
老黄编程18 分钟前
点云NARF关键点原理、算法描述及参数详细描述
算法·点云·narf特征点
CoovallyAIHub24 分钟前
NeurIPS 2025时间检验奖:10年之后再谈Faster R-CNN
深度学习·算法·计算机视觉
CoovallyAIHub36 分钟前
1024层网络让强化学习性能飙升50倍,NeurIPS 2025最佳论文揭示深度scaling的力量
深度学习·算法·计算机视觉
adfass37 分钟前
桌面挂件时钟/多功能时钟C++
开发语言·c++·算法
一只乔哇噻1 小时前
java后端工程师+AI大模型进修ing(研一版‖day56)
java·开发语言·学习·算法·语言模型
小熳芋1 小时前
排序链表- python-非进阶做法
数据结构·算法·链表