超时了
查看原帖
超时了
346308
Soshine_溯闪楼主2020/8/12 13:00
#include<iostream>
using namespace std;
const int maxn = 100005;
int dp[maxn], A[maxn];
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++){
		for(int j=1; j<=k&&j<=i; j++){
			int mx=0;
			for(int s=i-j+1; s<=i; s++)
				mx = max(mx, A[s]);
			dp[i]=max(dp[i], dp[i-j]+mx*j);
		}
	}
	cout<<dp[n];
}
2020/8/12 13:00
加载中...