Leetcode3254. 长度为 K 的子数组的能量值 I

server/2024/10/22 17:22:01/

Every day a Leetcode

题目来源:3254. 长度为 K 的子数组的能量值 I

解法1:暴力

遍历数组 nums 中的每个长度为 k 的子数组,判断子数组中的所有相邻元素是否满足后一个元素与前一个元素之差等于 1,如果满足则子数组的能量值等于子数组的最后一个元素,否则子数组的能量值等于 −1。

代码:

/** @lc app=leetcode.cn id=3254 lang=cpp** [3254] 长度为 K 的子数组的能量值 I*/// @lc code=start
class Solution
{
public:vector<int> resultsArray(vector<int> &nums, int k){int n = nums.size();vector<int> ans;for (int i = 0; i <= n - k; i++){bool flag = true;for (int j = i + 1; j < i + k && flag; j++)if (nums[j] != nums[j - 1] + 1)flag = false;if (flag)ans.push_back(nums[i + k - 1]);elseans.push_back(-1);}return ans;}
};
// @lc code=end

结果:

在这里插入图片描述

复杂度分析:

时间复杂度:O(n * k),其中 n 是数组 nums 的长度,k 是给定的正整数。子数组的数量是 n−k+1,对于每个子数组计算能量值的时间是 O(k),因此时间复杂度是 O(n * k)。

空间复杂度:O(1)。注意返回值不计入空间复杂度。


http://www.ppmy.cn/server/112009.html

相关文章

前端:HTML、CSS、JS、Vue

1 前端 内容概要 了解前端三件套(HTML、CSS、JS)在前端所起的作用掌握HTML标签的功能&#xff0c;掌握重要标签(a标签&#xff0c;form标签)了解CSS了解JS的基础语法掌握Vue的基础语法重点掌握Vue项目怎么启动项目掌握前后端分离是什么。前端做什么事情&#xff0c;后端做什么…

探索未知,悦享惊喜 —— 您的专属盲盒小程序,即将开启奇妙之旅

在这个充满无限可能的数字时代&#xff0c;每一次点击都可能是通往惊喜的门户。我们匠心打造的“惊喜盲盒”小程序&#xff0c;正是为了给您带来前所未有的娱乐体验与心灵触动。在这里&#xff0c;每一份盲盒都蕴藏着精心挑选的宝藏&#xff0c;等待着与您的不期而遇。 【探索…

Transforms使用

文章目录 一、认识Transforms二、ToTensor方法使用三、展示图片的方法 一、认识Transforms transforms 是 torchvision 库中的一个模块&#xff0c;它提供了一系列的图像预处理功能。这些功能可以被用来对图像数据进行变换&#xff0c;以便它们能够被神经网络模型更好地处理。…

论文速读|快速且稳健的人形机器人轨迹优化

论文地址&#xff1a;https://arxiv.org/pdf/2409.00303 这篇论文提出了一种新颖的全尺寸人形机器人轨迹优化算法&#xff0c;能够在几秒钟内生成的可行步态。该方法在能效和实现期望行为方面优于现有的最先进规划器。未来工作将涉及将优化后的轨迹转移到真实世界硬件上。 论文…

Java项目怎么从零部署到Linux服务器上?

目录 一.Java环境&#xff08;JDK&#xff09;安装 二.数据库&#xff08;MySQL&#xff09;安装 三.部署上线 ▐ 部署Jar包 ▐ 运行程序 ▐ 开放端口 一个Java项目首先需要一个支持它编译的Java环境&#xff0c;因此首先要保证服务器上安装的有相应的JDK 一.Java环境&a…

线性代数基础

向量的点积 点乘和叉乘 矩阵乘法 规则&#xff1a; 1&#xff0c;两个矩阵相乘时&#xff0c;第一个矩阵的列数必须等于第二个矩阵的行数 矩阵乘法是点乘还是叉乘 矩阵点乘&#xff1a;是矩阵各个对应元素相乘, 这个时候要求两个矩阵必须同样大小。矩阵叉乘&#xff1a;矩…

DML、DQL、DCL的基础介绍

1.DML、DQL、DCL 1.1DML-介绍 DML英文全称Data Manipulation Language&#xff08;数据操作语言&#xff09;&#xff0c;用来对数据库中表的数据记录进行增删改操作 添加数据&#xff08;INSERT&#xff09;修改数据&#xff08;UPDATE&#xff09;删除数据&#xff08;DEL…

JUC-无锁之CAS

问题提出 (应用之互斥) package cn.itcast; import java.util.ArrayList; import java.util.List; interface Account {// 获取余额Integer getBalance();// 取款void withdraw(Integer amount);/*** 方法内会启动 1000 个线程&#xff0c;每个线程做 -10 元 的操作* 如果初始…