比較簡單的單調隊列,但是有一些要注意的

維護單調隊列的時候裡面存的是入隊時間,而不是i,因為前面有l個沒有入隊(不可能走進),所以把i减一个l以达到延迟入队的效果

#include<bits/stdc++.h>
using namespace std;
const int maxn=;
int n,l,r,a[maxn];
int q[maxn],head=,tail=;
int f[maxn];
int main()
{
scanf("%d%d%d",&n,&l,&r);
for(int i=;i<=n;i++)scanf("%d",&a[i]);
for(int i=l;i<=n;i++){
while(head<=tail && q[head]+r<i)head++;
while(head<=tail && f[q[tail]]<f[i-l])tail--;
q[++tail]=i-l;//不能直接用i,不然記個p當做時間也行(一樣效果
f[i]=f[q[head]]+a[i];
}
int ans=;
for(int i=n+-r;i<=n;i++)ans=max(ans,f[i]);
printf("%d",ans);
}

最新文章

  1. laravel中如何防止直接访问.env文件
  2. 优先队列 :Priority Queue
  3. MyBatis学习(四)、MyBatis配置文件
  4. Apple移动设备处理器指令集 armv6、armv7、armv7s及arm64
  5. jquery中的prop和attr比较区别
  6. $_ 与 $PSItem
  7. 【恒天云技术分享系列11】Sheepdog简介
  8. Codeforces Round #331 (Div. 2) D. Wilbur and Trees 记忆化搜索
  9. Android之手机屏幕的获取
  10. 201521123052《Java程序设计》第10周学习总结
  11. Oracle Global Finanicals Technical Reference(二)
  12. .net js有数据 但是跳转不到操作页
  13. jsp页面&lt;%@ page报错问题
  14. html5 知识点简单总结02
  15. Zabbix4.2.0使用Python连接企业微信报警
  16. 更换Grade源为阿里云解决下载慢问题
  17. git server 搭建指南
  18. nodejs调用脚本(python/shell)和系统命令
  19. win7(64)使用vim碰到的奇怪问题
  20. 关于vue路由嵌套遇到的坑~

热门文章

  1. ubuntu搭建nginx
  2. java to Json or Json to JavaBean
  3. 第二篇:python基础之核心风格
  4. js日期和时间戳互换
  5. 【应用】SVG动态 时钟
  6. XML简介——可扩展标记语言(Extensible Markup Language)
  7. POJ3728 THE MERCHANT LCA RMQ DP
  8. windows切换到谷歌浏览器黑屏问题
  9. cx_Oracle库导入失败引起crontab中python程序运行失败,并且无错误提示
  10. 5、html的body内标签之多行文本及下拉框