力扣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;
      }
  };
相关推荐
hai_android14 小时前
Android 设备锁定:Kiosk Mode 实战
android·java·android jetpack
hetao173383714 小时前
2026-10-20 hetao1733837 的刷题记录
c++·算法
张伯毅14 小时前
External Shuffle Service(spark3_shuffle):原理、配置与排障
java·开发语言·spark·yarn
wenyq714 小时前
LeetCode 123. Best Time to Buy and Sell Stock III
leetcode
high一马平川14 小时前
# SystemUI Dagger2 精读 · 第 2 章 @Inject:1200 处构造注入,和 1 处例外
android·java·kotlin
小陈从不会敲代码14 小时前
JavaEE面试复习(多线程-初阶)
java·面试·java-ee
周厉14 小时前
酒店PMS系统设计:房型房价管理与动态价格优先级实现(Java/MySQL)
java·数据库·pms酒店系统
一碗白开水一14 小时前
Day 5 · 弹性 | 微观
java·前端·数据库
迪飞特科技14 小时前
大模型接入业务系统:API、本地部署、RAG、智能体四种路线怎么选
java·数据库·人工智能·知识图谱·deepseek·本地化大模型