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

3152. 特殊数组 II(24.8.14)

题目

如果数组的每一对相邻元素都是两个奇偶性不同的数字,则该数组被认为是一个 特殊数组 。

你有一个整数数组 nums 和一个二维整数矩阵 queries,对于 queries[i] = [fromi, toi],请你帮助你检查
子数组 nums[fromi…toi] 是不是一个 特殊数组 。

返回布尔数组 answer,如果 nums[fromi…toi] 是特殊数组,则 answer[i] 为 true
,否则,answer[i] 为 false 。

示例 1:

输入:nums = [3,4,1,2,6], queries = [[0,4]]

输出:[false]

解释:

子数组是 [3,4,1,2,6]。2 和 6 都是偶数。

示例 2:

输入:nums = [4,3,1,6], queries = [[0,2],[2,3]]

输出:[false,true]

解释:

子数组是 [4,3,1]。3 和 1 都是奇数。因此这个查询的答案是 false。 子数组是
[1,6]。只有一对:(1,6),且包含了奇偶性不同的数字。因此这个查询的答案是 true。

提示:

1 <= nums.length <= 105
1 <= nums[i] <= 105
1 <= queries.length <= 105
queries[i].length == 2
0 <= queries[i][0] <= queries[i][1] <=
nums.length - 1

解题思路

初次尝试,使用和昨日一样的思路会在最后一个数据当中出现时间超时的状况,因此我们要改变思路,我们可以考虑前缀和的思路,先遍历所有的数字,判断其与前一个数是否满足关系,同一个符合区间内的数值一致。根据区间数组给出的两端数值是否一致进行判断而是否符合标准。

代码

class Solution {
public:vector<bool> isArraySpecial(vector<int>& nums, vector<vector<int>>& queries) {int n=nums.size();vector<int> biao(n);//记录for(int i=1;i<n;i++){//符合的数+0 不符合的+1//同一个符合区间内 记录的数值一致biao[i]=biao[i-1]+(nums[i-1]%2==nums[i]%2);}vector<bool> ans;n=queries.size();for(int i=0;i<n;i++){int start=queries[i][0],end=queries[i][1];ans.push_back(biao[start]==biao[end]);}return ans;}
};
http://www.lryc.cn/news/424445.html

相关文章:

  • Android 全系统版本文件读写最佳适配,CV 即用(适配到 Android 14)
  • 【日记】朋友和他女朋友领证了(368 字)
  • 行业大模型:信用评分大模型、生产优化大模型、库存管理大模型、物流行业大模型、零售行业大模型
  • VSCode 搭配 Windows 下各种 C/C++ 编译器使用
  • 【JavaEE】线程池和定时器
  • 《Unity3D网络游戏实战》通用服务器框架
  • LeetCode404 左叶子之和
  • nodejs操作redis的工具类
  • 关于wsl2与win11互联互通的问题
  • C++ 类型转换
  • 2024挖漏洞给报酬的网站汇总,兼职副业3天收益2k
  • 0到1学习Google广告(2):掌握展示位置及排名规则丨出海笔记
  • MySQL数据库读超时/SELECT查询超时 杂记
  • docker数据卷:
  • 【linux】linux中如何通过systemctl来创建和管理服务
  • WPF-实现多语言的静态(需重启)与动态切换(不用重启)
  • UE5学习笔记12-为角色添加蹲下的动作
  • 【笔记】Android 多用户模式和用户类型
  • SQL基础——MySQL的索引
  • 【开发语言】面向对象和面向过程开发思路的区别
  • 谷歌账号登录的时候提示被停用,原因是什么,账号还有救吗?该如何处理?
  • 数据库复习笔记
  • 学习STM32(6)-- STM32单片机ADCDAC的应用
  • 学习记录第二十五天
  • C语言:字符串函数strcmp
  • 【数据分析---偏企业】 Excel操作
  • Ajax-01.原生方式
  • OpenAI GPT-2 model use with TensorFlow JS
  • JVM-运行数据区(堆、栈、元空间)
  • 超详细!!! LVS(Linux virual server)负载均衡知识及其NAT模式、DR模式、火墙标记实验