Submission #519585

#TimeUsernameProblemLanguageResultExecution timeMemory
519585silverfishBoxes with souvenirs (IOI15_boxes)C++14
50 / 100
2085 ms19824 KiB
#include <bits/stdc++.h>
#include "boxes.h"
using namespace std;
using ll = long long;
const int N = 10000007;

ll dp[N], p[N];

long long delivery(int n, int k, int L, int P[]) {
	ll l = L;
	fill(dp, dp+n+1, 1e18+10);
	for(int i = 0; i < n; ++i) p[i+1] = P[i];

	dp[0] = 0;
	for(int i = 1; i <= n; ++i){
		ll mn = min(l, 2LL*p[i]);
		for(int j = i; j > max(i-k, 0); --j){
			ll cmn = min(mn, 2LL*(l-p[j]));
			dp[i] = min(dp[i], dp[j-1] + cmn);
		}
	}

    return dp[n];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...