leetcode 2110

2110: 股票平滑下跌阶段的数目

示例 1 的 prices=3,2,1,4,按照子数组的右端点下标分组,有这些连续递减子数组:

  • 右端点 i=0:3
  • 右端点 i=1:3,22
  • 右端点 i=2:3,2,12,11
  • 右端点 i=3:4

思路:在遍历 prices 的同时,统计当前这段连续递减的长度 last_d。

复制代码
long long ans = 1;   // 第一个元素自己算一个
  • 1 <= prices.length <= 10^5

    class Solution {
    public:
    long long getDescentPeriods(vector& prices) {
    int n=prices.size(),last_d=1; // 当前连续平滑段长度(≥1)
    long long ans=1;
    for(int i=1;i<n;i++){
    if(prices[i-1]-prices[i]==1) last_d++;
    else last_d=1;
    ans+=last_d;
    }

    复制代码
          return ans;
      }

    };

相关推荐
不正经学生8 分钟前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
毕竟是shy哥3 小时前
计算YOLO数据集中每个类的目标数
算法·yolo·机器学习
M78佐菲3 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
圣保罗的大教堂3 小时前
leetcode 1406. 石子游戏 III 困难
leetcode
晊晌_h4 小时前
嵌入式从0到精通——数据结构总结[特殊字符]
数据结构·算法·排序算法
我找到地球的支点啦5 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
罗西的思考5 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(3)--- RAG
人工智能·算法·机器学习
浪里镖客6 小时前
位姿转换矩阵写法-个人习惯(计算机理解其实是相反的)
线性代数·算法·矩阵
小白羊丨9 小时前
如何诊断 Prompt 模板导致的效果下降?
人工智能·算法·prompt
OPEN-F10 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法