力扣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;
      }
  };
相关推荐
嗑嗑嗑瓜子的猫15 小时前
Java!它值得!
java·开发语言
墨尘笔尖16 小时前
最大最小值降采样算法的优化
c++·算法
2401_8955213416 小时前
【Spring Security系列】Spring Security 过滤器详解与基于JDBC的认证实现
java·后端·spring
皮卡蛋炒饭.17 小时前
线程的概念和控制
java·开发语言·jvm
一只大袋鼠17 小时前
MyBatis 入门详细实战教程(一):从环境搭建到查询运行
java·开发语言·数据库·mysql·mybatis
程序员老邢17 小时前
【人生底稿・番外篇 05】我的电影江湖:从录像带时代,到港片陪伴的青春岁月
java·程序人生·职场发展·娱乐
sonnet-102917 小时前
函数式接口和方法引用
java·开发语言·笔记
Bat U17 小时前
JavaEE|多线程(二)
java·开发语言
_Evan_Yao17 小时前
RAG中的“Chunk”艺术:我试过10种切分策略后总结的结论
java·人工智能·后端·python·软件工程
魂梦翩跹如雨18 小时前
数据库的“契约” —— 约束(Constrains)
java·数据库·mysql