# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
974815 | 2024-05-03T20:18:32 Z | marinaluca | Boxes with souvenirs (IOI15_boxes) | C++14 | 0 ms | 0 KB |
#include <bits/stdc++.h> using namespace std; //#define int long long #define ll long long #define xx first #define yy second #define all (x) begin(x), end(x) #define FOR (i, a, b) for (auto i = (a); i < (b); ++ i) const int NMAX = 1e7; int ans[NMAX + 1], rez[NMAX + 1]; long long delivery (int n, int k, int l, int s[]){ for (int i = 1; i <= n; ++ i){ ans[i] = min (s[i - 1] * 2 , l); if (i > k){ ans[i] += ans[i - k]; } } int mini; for (int i = n - 1; i >= 0; -- i){ rez[i] = min ((l - v[i]) * 2, l); if (i < n - k){ rez[i] += rez[i + k]; } mini = min (mini, rez[i] + ans[i]); } return mini; }