力扣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;
      }
  };
相关推荐
Magnum Lehar2 分钟前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎
Inverse1622 分钟前
C语言_动态内存管理
c语言·数据结构·算法
数据与人工智能律师4 分钟前
虚拟主播肖像权保护,数字时代的法律博弈
大数据·网络·人工智能·算法·区块链
就叫飞六吧15 分钟前
Spring Security 集成指南:避免 CORS 跨域问题
java·后端·spring
Mcworld85716 分钟前
java集合
java·开发语言·windows
天黑请闭眼22 分钟前
IDEA:程序编译报错:java: Compilation failed: internal java compiler error
java·intellij-idea
wuqingshun31415933 分钟前
蓝桥杯 16. 外卖店优先级
c++·算法·职场和发展·蓝桥杯·深度优先
YouQian7721 小时前
2025春训第十九场
算法
CodeJourney.1 小时前
基于MATLAB的生物量数据拟合模型研究
人工智能·爬虫·算法·matlab·信息可视化
Epiphany.5561 小时前
素数筛(欧拉筛算法)
c++·算法·图论