LeetCode 2110. 股票平滑下跌阶段的数目(滑动窗口)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给你一个整数数组 prices ,表示一支股票的历史每日股价,其中 prices[i] 是这支股票第 i 天的价格。

一个 平滑下降的阶段 定义为:对于 连续一天或者多天 ,每日股价都比 前一日股价恰好少 1 ,这个阶段第一天的股价没有限制。

请你返回 平滑下降阶段 的数目。

示例 1:
输入:prices = [3,2,1,4]
输出:7
解释:总共有 7 个平滑下降阶段:
[3], [2], [1], [4], [3,2], [2,1][3,2,1]
注意,仅一天按照定义也是平滑下降阶段。示例 2:
输入:prices = [8,6,7,7]
输出:4
解释:总共有 4 个连续平滑下降阶段:[8], [6], [7][7]
由于 8 - 61 ,所以 [8,6] 不是平滑下降阶段。示例 3:
输入:prices = [1]
输出:1
解释:总共有 1 个平滑下降阶段:[1]提示:
1 <= prices.length <= 10^5
1 <= prices[i] <= 10^5

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/number-of-smooth-descent-periods-of-a-stock
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 滑动窗口 [i, j] 记录连续下降 1 的区间,每次 加入答案 j-i+1
  • 不满足连续下降 1,则重新开始记录区间
class Solution {
public:long long getDescentPeriods(vector<int>& prices) {long long n = prices.size(), i = 0, j = 1, ans = 1;while(j < n){while(j < n && prices[j]+1 == prices[j-1]){ans += j-i+1;j++;}i = j;if(i < n)ans++;j++;}return ans;}
};

120 ms 90.8 MB C++


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/471391.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

教你遇事最有水平的处理方法

1 、学会沉默&#xff08;如果他只是想拿你撒气&#xff09; 有时候&#xff0c;你被人误解&#xff0c;你不想争辩&#xff0c;所以选择沈默。本来就不是所有的人都得了解你&#xff0c;因此你认为不必对全世界喊话。却也有时候&#xff0c;你被最爱的人误解&#xff0c;你难过…

JavaScript + Audio API自制简易音乐播放器(详细完整版、小白都能看懂)

JavaScript Audio API自制简易音乐播放器&#xff08;详细完整版&#xff09; ** 音乐播放器的功能清单如下&#xff1a; ** 1.点击暂停按钮&#xff0c;歌曲暂停 2.点击播放按钮&#xff0c;歌曲播放 3.单曲循环与取消单曲循环 4.当播放到列表最后一首歌曲时&#xff0c;点…

C语言成绩统计摘要,C语言学生信息管理系统(完整版)摘要.docx

电子科技大学成都学院程序综合设计论文论文题目 学生信息管理系统 学生姓名 魏国 学 号 1340840625 专  业 机械设计制造及其自动化 系(分院) 电子工程系 授课教师 杜娥2015年12月制摘要随着经济的发展&#xff0c;社会的进步&#xff0c;计算机越来越深入到我们日常的工作学…

安装 paddleocr 报错 gcc: error trying to exec ‘cc1‘: execvp: 没有那个文件或目录

安装 paddleocr pip install paddleocr -i https://pypi.tuna.tsinghua.edu.cn/simple报错 creating build/temp.linux-x86_64-3.8 creating build/temp.linux-x86_64-3.8/Levenshtein gcc -pthread -B /opt/bdp/data01/anaconda3/envs/pp21/compiler_compat -Wl,--sysroot/ …

软件工程项目之摄影App

摄影app 开发人员&#xff1a;Ives & Dyh 开发功能&#xff1a; 摄影师注册与认证&#xff0c;为年轻摄影师提供成长的空间&#xff0c;发挥一技之长的平台。用户注册与验证&#xff0c;为有摄影需求的人提供选择摄影师进行个性化拍摄的平台。用户与摄影师的拍摄预约。订单…

jQuery实现PC端商城购物车模块基本功能(每个商品的小计和合计都会根据添加和删除的操作来动态计算)

jQuery实现PC端商城购物车模块基本功能 先上效果图&#xff1a; 因为主要是想练习jQuery的使用&#xff0c;所以页面CSS部分比较简陋&#xff0c;有需要的话&#xff0c;大家在参考代码时&#xff0c;可以自己再完善下CSS部分的代码&#xff0c;让购物车页面更加美观。 功能…

c语言 define 关键字,c语言中define的一个不常见的用法

一个开源的x86模拟器中的键盘宏我看不懂对应的代码&#xff0c;我只知道最终的宏_KEY_button这种形式的枚举&#xff0c;比如_KEY_ESCAPE对应的值是1&#xff0c;但是对于这个宏是怎么得出来的不懂&#xff0c;具体来说&#xff0c;第一行中#define _KEYS(_)括号中的_代表什么意…

IOS_改变UITextField placeHolder颜色、字体

http://blog.sina.com.cn/s/blog_671d2e4f0101d90v.html 转载于:https://www.cnblogs.com/muyushifang07/p/4984846.html

七、CSS 三大特性(完整详细解析)

** CSS 三大特性&#xff08;完整详细解析&#xff09; ** 1.优先级&#xff1a; 定义CSS样式时&#xff0c;经常出现两个或更多规则应用在同一元素上&#xff0c;此时&#xff0c; 选择器相同&#xff0c;则执行层叠性选择器不同&#xff0c;就会出现优先级的问题。 1&am…

武林c语言,详解C语言中条件编译

预处理器提供条件编译&#xff0c;程序的不同部分可以在不同的条件下编译&#xff0c;从而产生不同的目标代码文件&#xff0c;这对于程序移植和调试非常有用&#xff0c;本文是武林技术频道小编给为大家带来的详解中条件编译&#xff0c;一起来了解一下吧&#xff01;通常情况…

LeetCode 2114. 句子中的最多单词数

文章目录1. 题目2. 解题1. 题目 一个 句子 由一些 单词 以及它们之间的单个空格组成&#xff0c;句子的开头和结尾不会有多余空格。 给你一个字符串数组 sentences &#xff0c;其中 sentences[i] 表示单个 句子 。 请你返回单个句子里 单词的最多数目 。 示例 1&#xff1…

loadView加载(变换成ScrollView)

/**loadView加载,将系统的view变换成ScrollView*/ - (void)loadView{ [super loadView]; UIScrollView *mainScroll [[UIScrollView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; mainScroll.scrollEnabled YES; mainScroll.contentSize CGSizeMake(0, …

c语言(int)x 100,【单选题】下列语句执行后,变量a、c的值分别是( ) int x=182; int a,c;c=x/100;a=x%10;...

【单选题】下列语句执行后,变量a、c的值分别是( ) int x182;int a,c;cx/100;ax%10;更多相关问题阅读下面短文&#xff0c;掌握其大意&#xff0c;然后从36&#xff0d;55各题所给的四个选项(A、B、C和D)中&#xff0c;选出最佳选项。In the seventh gradeFor several days I sa…

一、css清除浮动方法学习笔记总结(超详细,简单易懂)

** css清除浮动方法学习笔记总结&#xff08;超详细&#xff0c;简单易懂&#xff09; ** 问题&#xff1a; 上图中&#xff0c;由于container(父级元素&#xff09;未设置高度&#xff0c;其内部子元素设置了float浮动&#xff0c;导致与container同级&#xff08;也就是co…

LeetCode 2115. 从给定原材料中找到所有可以做出的菜(拓扑排序)

文章目录1. 题目2. 解题1. 题目 你有 n 道不同菜的信息。给你一个字符串数组 recipes 和一个二维字符串数组 ingredients 。 第 i 道菜的名字为 recipes[i] &#xff0c;如果你有它 所有 的原材料 ingredients[i] &#xff0c;那么你可以 做出 这道菜。一道菜的原材料可能是 另…

C语言makefile文件详解,makefile讲解

仅供自己学习使用一、Makefile介绍Makefile 或 makefile: 告诉make维护一个大型程序&#xff0c; 该做什么。Makefile说明了组成程序的各模块间的相互 关系及更新模块时必须进行的动作&#xff0c; make按照这些说明自动地维护这些模块。执行make命令时&#xff0c;需要一个 Ma…

二、MySQL连接查询学习笔记(多表连接查询:内连接,外连接,交叉连接详解)

MySQL连接查询&#xff08;多表连接查询&#xff1a;内连接&#xff0c;外连接&#xff0c;交叉连接详解&#xff09; 6&#xff1a;多表连接查询 笛卡尔乘积&#xff1a;如果连接条件省略或无效则会出现 解决办法&#xff1a;添加上连接条件连接查询的分类&#xff1a; 1.按…

二维数组和指针数组

#include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int arr1[3]; int arr2[3]; int arr3[3]; int * ptr; // ptr1是一个指向 int [3] 的指针&#xff0c;即ptr的类型和&arr1的类型是一样的&#x…

android 本机号码一键登录,什么是本机号码一键登录?APP本机号码一键登录如何实现?...

三大运营商推出一键登录的服务后&#xff0c;由于其便捷性和安全性都好于传统短信验证码&#xff0c;越来越多的APP注册登录环节都在使用本机号码一键登录验证方式。本文主要介绍了本机号码一键登录特点以及实现方法。一、什么是本机号码一键登录&#xff1f;平时我们填手机号接…

LeetCode 2116. 判断一个括号字符串是否有效(栈)

文章目录1. 题目2. 解题1. 题目 一个括号字符串是只由 ( 和 ) 组成的 非空 字符串。 如果一个字符串满足下面 任意 一个条件&#xff0c;那么它就是有效的&#xff1a; 字符串为 ().它可以表示为 AB&#xff08;A 与 B 连接&#xff09;&#xff0c;其中A 和 B 都是有效括号字…