力扣901.股票价格跨度

力扣901.股票价格跨度

  • 单调栈

    • 若当前价格 >= 栈顶元素 弹出栈顶元素
    • 找到最远的符合要求的
cpp 复制代码
  class StockSpanner {
      stack<pair<int,int>> st;
      int cur_day = -1;
  public:
      StockSpanner() {
          st.emplace(-1,INT_MAX);
      }
      
      int next(int price) {
          while(price >= st.top().second)
              st.pop();
          int ans = ++cur_day - st.top().first;
          st.emplace(cur_day,price);
          return ans;
      }
  };
相关推荐
zh_xuan4 分钟前
最小跳跃次数
数据结构·算法
努力写代码的熊大13 分钟前
c++异常和智能指针
java·开发语言·c++
yumgpkpm14 分钟前
2026软件:白嫖,开源,外包,招标,晚进场(2025年下半年),数科,AI...中国的企业软件产业出路
大数据·人工智能·hadoop·算法·kafka·开源·cloudera
山岚的运维笔记17 分钟前
SQL Server笔记 -- 第15章:INSERT INTO
java·数据库·笔记·sql·microsoft·sqlserver
Yvonne爱编码17 分钟前
JAVA数据结构 DAY5-LinkedList
java·开发语言·python
孞㐑¥22 分钟前
算法—队列+宽搜(bfs)+堆
开发语言·c++·经验分享·笔记·算法
yufuu9831 分钟前
并行算法在STL中的应用
开发语言·c++·算法
zh_xuan31 分钟前
单青蛙跳台阶
数据结构·算法
Kx_Triumphs37 分钟前
计算几何-旋转卡壳两种实现方案(兼P1452题解
算法·题解
代码游侠41 分钟前
学习笔记——Linux字符设备驱动开发
linux·arm开发·驱动开发·单片机·嵌入式硬件·学习·算法