动态规划(算法竞赛、蓝桥杯)--单调队列优化绿色通道

1、B站视频链接:E45 单调队列优化DP 绿色通道_哔哩哔哩_bilibili

cpp 复制代码
#include <bits/stdc++.h> 
using namespace std;
const int N=5e4+10;
int n,tim,w[N],f[N],q[N];

bool check(int m){
  int h=1,t=0;
  for(int i=1; i<=n; i++){
    while(h<=t && f[q[t]]>=f[i-1]) t--;
    q[++t]=i-1;
    if(q[h]<i-m) h++;
    f[i]=f[q[h]]+w[i];
    if(i>n-m && f[i]<=tim) return 1;//r指针左移 
  }
  return 0;
}
int main(){
  cin>>n>>tim;
  for(int i=1;i<=n;i++) cin>>w[i];
  int l=-1,r=n+1;
  while(l+1<r){
    int mid=l+r>>1;
    if(check(mid)) r=mid;
    else l=mid;
  }
  cout<<r-1; //空题段长度
}
相关推荐
ModestCoder_29 分钟前
强化学习 Policy 的 Tracking 能力全解析,以Legged_gym为例解说Policy的训练流程
人工智能·算法·自然语言处理·机器人·具身智能
小白程序员成长日记1 小时前
2025.12.02 力扣每日一题
数据结构·算法·leetcode
永远都不秃头的程序员(互关)1 小时前
在vscodeC语言多文件编译实战指南
c语言·数据结构·算法
立志成为大牛的小牛1 小时前
数据结构——五十三、处理冲突的方法——拉链法(王道408)
数据结构·学习·考研·算法
吃着火锅x唱着歌1 小时前
LeetCode 3583.统计特殊三元组
算法·leetcode·职场和发展
FPGA_无线通信1 小时前
OFDM 频偏补偿和相位跟踪(2)
算法·fpga开发
SHOJYS2 小时前
思维难度较大 贪心优化背包 [USACO22DEC] Bribing Friends G
数据结构·算法·深度优先
啊董dong2 小时前
课后作业-2025年12月07号作业
数据结构·c++·算法·深度优先·noi
无限进步_2 小时前
C语言宏的魔法:探索offsetof与位交换的奇妙世界
c语言·开发语言·windows·后端·算法·visual studio
Lucky“经营分析”2 小时前
经营分析师-《经营分析能力》
算法