| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1378851 | danirasilla | Boxes with souvenirs (IOI15_boxes) | C++20 | 314 ms | 125684 KiB |
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <set>
#include "boxes.h"
using namespace std;
typedef long long ll;
const ll e9 = 1e9;
const int N = 10'000'007;
ll cnt[N];
ll dp[N];
long long delivery(int n, int k, int l, int a[])
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t = 1;
//cin >> t;
while (t--) {
/*
int n, k, l;
cin >> n >> k >> l;
for (int i = 0; i < n; i++)
cin >> a[i];
*/
for (int i = 0; i < n; i++) {
cnt[i % k] += min(2 * a[i], l);
dp[i] = cnt[i % k];
//cerr << "i = " << i << " dp[i] = " << dp[i] << endl;
}
for (int i = 0; i < k; i++)
cnt[i] = 0;
ll ans = dp[n - 1];
for (int i = n - 1; i > 0; i--) {
cnt[i % k] += min(2 * l - 2 * a[i], l);
ans = min(ans, dp[i - 1] + cnt[i % k]);
//cerr << "i = " << i << " cnt[i % k] = " << cnt[i % k] << " ans = " << ans << endl;
}
cnt[0] += min(2 * l - a[0] * 2, l);
ans = min(ans, cnt[0]);
return ans;
}
}Compilation message (stderr)
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
