CF467C George and Job 题解 DP 前缀和
DP 前缀和
题意:
给你一个长度为
解法:
很经典的DP模型,我们定义
根据闫式DP分析法,我们可以按照第
①不选:结果即为
②选:结果即为:
用前缀和优化一下:
两种情况取个max即可。
参考代码
void Showball(){
int n,m,k;
cin>>n>>m>>k;
vector<LL> a(n+1),s(n+1);
for(int i=1;i<=n;i++){
cin>>a[i];
s[i]=s[i-1]+a[i];
}
vector f(n+1,vector<LL>(k+1));
for(int i=1;i<=n;i++){
for(int j=1;j<=k;j++){
f[i][j]=f[i-1][j];
if(i>=m) f[i][j]=max(f[i][j],f[i-m][j-1]+s[i]-s[i-m]);
}
}
cout<<f[n][k]<<endl;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】