Submission #533934

#TimeUsernameProblemLanguageResultExecution timeMemory
533934amunduzbaevPeru (RMI20_peru)C++17
18 / 100
653 ms6940 KiB
#include "bits/stdc++.h"
using namespace std;
#include "peru.h"
#ifndef EVAL
#include "grader.cpp"
#endif

#define ar array
const int N = 2e3 + 5;
const int mod = 1e9 + 7;
long long dp[N];

int solve(int n, int k, int* a){
	for(int i=0;i<n;i++){
		dp[i] = 1e18;
		int mx = a[i];
		for(int j=i-1;j>=max(0, i-k);j--){
			dp[i] = min(dp[i], dp[j] + mx);
			mx = max(mx, a[j]);
		}
		
		if(i < k) dp[i] = min(dp[i], 1ll * mx);
	}
	
	int res = 0;
	for(int i=0;i<n;i++){
		res = (res * 23ll + dp[i]) % mod;
	} 
	
	return res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...