acgo题库
  • 首页
  • 题库
  • 学习
  • 竞赛
  • 讨论
  • 排行
  • 团队
  • 备赛专区

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
登录
注册
题目详情提交记录(0)
  • 题解

    依旧单调队列

    userId_undefined

    复仇者_纳西妲厨一位

    题解仙人时空双修者秩序白银集训营话痨
    29阅读
    9回复
    2点赞
  • 老师牌题解用单调队列优化DP

    #include<bits/stdc++.h> using namespace std; struct node{ int val,id; }; int main(){ int n,l,r; cin>>n>>l>>r; vector<int>vec(n+1),dp(n+1,INT_MIN); for(int i=0;i<=n;i++) cin>>vec[i]; dp[0]=0; deque<node>Q; int p=0; for(int i=l;i<=n;i++){ while(Q.size()){ if(dp[p]>Q.back().val) Q.pop_back(); else break; } Q.push_back({dp[p],p}); while(Q.front().id<i-r) Q.pop_front(); dp[i]=Q.front().val+vec[i]; p++; } int ans=INT_MIN; for(int i=n-r+1;i<=n;i++){ ans=max(ans,dp[i]); } cout<<ans<<endl; }

    userId_undefined

    程某某

    小有名气倔强青铜时间刺客空间掌握者时空双修者枚举·枚举小能手
    15阅读
    0回复
    1点赞
  • 题解

    单调队列可以快速求区间最值

    userId_undefined

    腾渊之星

    小有名气秩序白银时间刺客空间掌握者时空双修者
    8阅读
    0回复
    1点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页