小齐的技能团队(dp)

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

ll f[10004];
ll a[10004];

int main() {
	int n,k;cin>>n>>k;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=1;i<=n;i++){
		ll c=0; // 当前段的最大技能水平
		for(int j=i;j>=max(1,i-k+1);j--){ // 从第i头奶牛向前遍历,最多k头奶牛
			c=max(c,a[j]);
			f[i]=max(f[i],f[j-1]+c*(i-j+1));
		}
	}
	cout<<f[n];
	
    return 0;
}
复制代码
状态转移:f[i] = max(f[i], f[j-1] + 当前段最大值 * 当前段长度)
相关推荐
fie888919 分钟前
NSCT(非下采样轮廓波变换)的分解和重建程序
算法
晨晖21 小时前
单链表逆转,c语言
c语言·数据结构·算法
kk哥88992 小时前
C++ 对象 核心介绍
java·jvm·c++
helloworddm2 小时前
WinUI3 主线程不要执行耗时操作的原因
c++
无能者狂怒2 小时前
YOLO C++ Onnx Opencv项目配置指南
c++·opencv·yolo
im_AMBER2 小时前
Leetcode 78 识别数组中的最大异常值 | 镜像对之间最小绝对距离
笔记·学习·算法·leetcode
集智飞行3 小时前
c++函数传参的几种推荐方式
开发语言·c++
鼾声鼾语3 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
其美杰布-富贵-李3 小时前
HDF5文件学习笔记
数据结构·笔记·学习
LYFlied3 小时前
【每日算法】LeetCode 25. K 个一组翻转链表
算法·leetcode·链表