力扣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;
      }
  };
相关推荐
java1234_小锋1 分钟前
Java高频面试题:怎么实现Redis的高可用?
java·开发语言·redis
jiankeljx5 分钟前
MySQL-mysql zip安装包配置教程
java
FlagOS智算系统软件栈6 分钟前
智源×Eclipse基金会携手打造PanEval,中欧协同开启“评测+开源+合规”新模式
java·eclipse·开源
wanderist.9 分钟前
从Nim游戏到SG函数
c++·算法·蓝桥杯
日出等日落12 分钟前
用 Kavita实现我的远程数字书屋搭建记!
java·开发语言·ide·vscode·编辑器
Alan GEO实施教练19 分钟前
实用新型专利申请代理机构选择:关键考量因素与实操要点讲解
java·开发语言·python
gelald21 分钟前
JVM - 类加载机制
java·jvm·后端
Darkdreams22 分钟前
Java进阶-在Ubuntu上部署SpringBoot应用
java·spring boot·ubuntu
Roselind_Yi22 分钟前
云计算实验实操|Keystone安装配置+CloudSim仿真平台部署(超详细图文版)
java·经验分享·笔记·ubuntu·云计算·vim·虚拟机
xieliyu.24 分钟前
Java 基础:接口核心概念与实战详解
java·开发语言