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

Leetcode每日一练--43

3349. 检测相邻递增子数组 I

难度:简单

提示

给你一个由 n 个整数组成的数组 nums 和一个整数 k,请你确定是否存在 两个 相邻 且长度为 k 的 严格递增 子数组。具体来说,需要检查是否存在从下标 a 和 b (a < b) 开始的 两个 子数组,并满足下述全部条件:

  • 这两个子数组 nums[a..a + k - 1] 和 nums[b..b + k - 1] 都是 严格递增 的。
  • 这两个子数组必须是 相邻的,即 b = a + k

如果可以找到这样的 两个 子数组,请返回 true;否则返回 false

子数组 是数组中的一个连续 非空 的元素序列。

示例 1:

输入:nums = [2,5,7,8,9,2,3,4,3,1], k = 3

输出:true

解释:

  • 从下标 2 开始的子数组为 [7, 8, 9],它是严格递增的。
  • 从下标 5 开始的子数组为 [2, 3, 4],它也是严格递增的。
  • 两个子数组是相邻的,因此结果为 true

示例 2:

输入:nums = [1,2,3,4,4,4,4,5,6,7], k = 5

输出:false

提示:

  • 2 <= nums.length <= 100
  • 1 <= 2 * k <= nums.length
  • -1000 <= nums[i] <= 1000

代码

bool hasIncreasingSubarrays(int* nums, int numsSize, int k) {// 遍历所有可能的起始位置 afor (int a = 0; a <= numsSize - 2 * k; a++) {int valid1 = 1; // 标记第一个子数组是否严格递增int valid2 = 1; // 标记第二个子数组是否严格递增// 检查第一个子数组 [a, a+k-1]for (int i = a; i < a + k - 1; i++) {if (nums[i] >= nums[i+1]) {valid1 = 0;break;}}// 检查第二个子数组 [a+k, a+2*k-1]for (int i = a + k; i < a + 2 * k - 1; i++) {if (nums[i] >= nums[i+1]) {valid2 = 0;break;}}// 若两个子数组均严格递增,返回 trueif (valid1 && valid2) {return true;}}return false;
}

http://www.dtcms.com/a/537473.html

相关文章:

  • Nacos 配置中心:动态配置管理
  • cpp / c++零基础两周速成教学
  • 免费微场景制作网站深圳外贸公司有哪些公司
  • Selenium定位元素的方法css和xpath的区别
  • 什么网站可以自学ps做贵宾卡互联网营销师
  • 建站公司 深圳巴西网站后缀
  • LeetCode 3. 无重复字符的最长子串解析
  • 给你一个新的网站怎么做2017网站备案抽查
  • 杭州网站做的好公司公司品牌网络推广方案
  • PyTorch Geometric 图神经网络实战利器
  • 《深入浅出统计学》学习笔记(一)
  • 从登录场景看通用序列化协议:JSON 与 Protobuf 实践
  • 天津网站优化软件一个公司可以做两个网站吗
  • 常用的网站开发做网站软件要钱吗
  • 怎样做一家网站傻瓜式建站软件下载
  • 【软考架构】案例题 - 数据库系统与缓存设计:在MySQL数据库设计中,反规范化的常见方法
  • 公司做网站都需要什么流程sofish wordpress主题
  • 顺德 网站开发 招聘网站排名软件推荐
  • 三维空间点绕Y轴旋转的数学原理与Python实现
  • 大模型未来发展可能有哪些趋势
  • 数电基础:TTL构成的常见门电路
  • 从0开始学python(day2)
  • 天蓝色网站网站建设遇到的问题及对策
  • 专业网站建设分类标准石家庄企业网络推广
  • MySQL Workbench 8.0.44中文汉化
  • 网站建设一条龙包括哪些服务wordpress主页在
  • 数据库锁分类和总结
  • 【优先级队列(堆)】数据流的中位数(hard)
  • 【openGauss】从“functions in index expression must be marked IMMUTABLE“谈起
  • 拼团购物网站怎么做学网站开发