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

Leetcode-3152 特殊数组 II

依旧前缀和,做的还是很不熟悉,链接如下3152. 特殊数组 II

我想着用位运算来判断相邻两个元素的奇偶情况,用&来判断结果为0就是奇偶相邻,后来发现自己考虑不周2&4的结果也为0,所以还是用了一个if else判断来。

我令cnt[0] = 0 ,cnt[1]=1;因为当 queries[i][0]==queries[i][1]时,也返回true。

然后就cnt[queries[i][1]+1] -cnt[queries[i][0]+1] == queries[i][1]-queries[i][0]时,返回true.

写的不够凝练,C++代码如下

class Solution {
public:vector<bool> isArraySpecial(vector<int>& nums, vector<vector<int>>& queries) {vector<int> cnt;cnt.resize(nums.size()+1);cnt[1] = 1;for(int i = 1;i<nums.size();i++){ if((nums[i]%2 == 0 && nums[i-1]%2 !=0)||(nums[i-1]%2 == 0 && nums[i]%2 !=0))cnt[i+1]+=cnt[i]+1;else cnt[i+1]+=cnt[i];}vector<bool> ans ;for(int i = 0; i<queries.size();i++){if(queries[i][0]==queries[i][1]){ans.push_back(true);continue;}if((cnt[queries[i][1]+1]-cnt[queries[i][0]+1]) == (queries[i][1]-queries[i][0]))ans.push_back(true);elseans.push_back(false);}return ans;}
};

http://www.lryc.cn/news/603608.html

相关文章:

  • 从字符串中“薅出”最长子串:LeetCode 340 Swift 解法全解析
  • B+树高效实现与优化技巧
  • 如何选择AI IDE?对比Cursor分析功能差异
  • echarts图表点击legend报错问题(折线图)
  • 8.项目起步(2)
  • 数据库02 网页html01 day44
  • 图像增强11种几何变换方法示例
  • 从单机架构到分布式:Redis为何成为架构升级的关键一环?
  • 基于web的在线购物系统的设计与实现/在线商城的设计与实现
  • 架构实战——互联网架构模板(“网络层”技术)
  • MySQL MVCC:并发神器背后的原理解析
  • ElementUI表格 el-table实现自动循环滚动
  • MySQL图解索引篇
  • JavaWeb(苍穹外卖)--学习笔记15(分页查询PageHelper)
  • JavaWeb 入门:JavaScript 基础与实战详解(Java 开发者视角)
  • 一个人开发一个App(数据库)
  • vue3组件通信的几种方法,详解
  • ​第七篇:Python数据库编程与ORM实践
  • Vue 2.0响应式原理深度解析
  • 【C++算法】82.BFS解决FloodFill算法_被围绕的区域
  • 基于SpringBoot和Leaflet集成在线天气服务的区县当前天气WebGIS实战
  • 【CSS】盒子类型
  • Linux网络:多路转接 select
  • 7月29号打卡
  • 个人健康管理小程序(消息订阅、Echarts图形化分析)
  • C# CAN通信上位机系统设计与实现
  • Hyperchain安全与隐私机制详解
  • Prometheus + Grafana + Micrometer 监控方案详解
  • CodeRush AI 助手进驻 Visual Studio:AiGen/AiFind 亮相(三)
  • 【数据可视化-74】电信用户流失数据可视化分析:Python + Pyecharts 炫酷大屏(含完整的数据,代码)