jorrunur_jorisuesk @ 2024-04-08 16:51:21
#include<bits/stdc++.h>
using namespace std;
int n,l,r;int ans=-2147483647;
int a[400005];
bool book[400005];
int dp[400005];
//priority_queue <int,vector<int>,greater<int> > q;
int main(){
cin>>n>>l>>r;
for(int i=0;i<=n;i++){
cin>>a[i];
dp[i]=ans;
}
book[0]=1;
dp[0]=a[0];
for(int i=0;i<n;i++){
if(book[i]==1){
for(int j=i+l;j<=i+r;j++){
dp[j]=max(dp[j],dp[i]+a[j]);
book[j]=1;
}
}
}
for(int i=n;i<=2*n;i++){
if(book[i]){
ans=max(ans,dp[i]);
}
}
cout<<ans;
return 0;
}
by jorrunur_jorisuesk @ 2024-04-08 16:51:47
@jorrunur_jorisuesk 他甚至把优先队列注释掉了
by JRzzx @ 2024-04-08 16:52:50
尼亚鞭尸我呢?
by JRzzx @ 2024-04-08 16:53:46
记录,so?
by 呆呆的她啊 @ 2024-04-21 00:30:00
@jorrunur_jorisuesk 数据是小了 不过这是模板题 我做这道题倒是想到了这题链接
by Special_Tony @ 2024-06-11 14:53:33
@呆呆的她啊 我GESP202312赛时用优堆过的。。
by 呆呆的她啊 @ 2024-06-11 16:07:48
@Special_Tony 为什么哪里都能看到你