leetcode 2110

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

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

  • 右端点 i=0:[3]
  • 右端点 i=1:[3,2],[2]
  • 右端点 i=2:[3,2,1],[2,1],[1]
  • 右端点 i=3:[4]

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

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

    class Solution {
    public:
    long long getDescentPeriods(vector<int>& 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;
      }

    };

相关推荐
sali-tec1 分钟前
C# 基于OpenCv的视觉工作流-章40-特征找图
图像处理·人工智能·opencv·算法·计算机视觉
wearegogog1231 分钟前
毫米波MIMO系统仿真中混合预编码的交替最小化算法
算法·预编码算法
油泼辣子多加2 分钟前
【DL】Transformer算法应用
人工智能·深度学习·算法·机器学习·transformer
2301_795741792 分钟前
C++中的代理模式变体
开发语言·c++·算法
fof9203 分钟前
Base LLM | 从 NLP 到 LLM 的算法全栈教程 第二天
人工智能·算法·自然语言处理
2301_789015623 分钟前
封装RBTree(红黑树)实现myset和mymap
开发语言·数据结构·c++·算法·r-tree
大鹏说大话7 分钟前
后端开发指南:同步与异步接口的选型策略与实战场景
算法
Book思议-7 分钟前
【数据结构实战】双向链表:删除节点
c语言·数据结构·算法·链表
y = xⁿ13 分钟前
【LeetCodehot100】 T543:二叉树的直径 T102:二叉树的层序遍历
算法
敲上瘾14 分钟前
位图与布隆过滤器:原理、实现与海量数据处理方案
大数据·数据结构·算法·位图·布隆过滤器