Submission #1246416

#TimeUsernameProblemLanguageResultExecution timeMemory
1246416SpyrosAlivBoxes with souvenirs (IOI15_boxes)C++20
Compilation error
0 ms0 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; #define ll long long int n, k, l; const ll INF = 1e13; long long delivery(int N, int K, int L, int p[]) { n = N; k = K; l = L; ll ans = n * L; vector<int> ord; for (int i = 0; i < n; i++) ord.push_back(i); do { vector<ll> dp(k+1); for (int i = 0; i < k; i++) dp[i] = INF; dp[k] = 0; ll pos = 0; for (int i = 0; i < n; i++) { ll nxt = p[ord[i]]; ll minDis = min(abs(nxt - pos), L - abs(nxt - pos)); vector<ll> dp2; dp2 = dp; dp2[k] = INF; for (int kk = 1; kk <= k; kk++) { dp2[kk-1] = min(INF, dp[kk] + minDis); if (kk < k) dp2[k] = min(dp2[k], dp[kk] + min(pos, L - pos) + min(nxt, L - nxt)); } dp2[k] = min(dp2[k], dp[0] + min(pos, L - pos) + min(nxt, L - nxt)); pos = p[ord[i]]; dp = dp2; } ll minDis = min(pos, L - pos); for (int i = 0; i <= k; i++) { ans = min(ans, minDis + dp[i]); } } while (next_permutation(ord.begin(), ord.end())); return ans; } signed main() { int n, k, l; cin >> n >> k >> l; int p[n]; for (int i = 0; i < n; i++) cin >> p[i]; cout << delivery(n, k, l, p) << "\n"; }

Compilation message (stderr)

/usr/bin/ld: /tmp/ccgm836j.o: in function `main':
grader.c:(.text.startup+0x0): multiple definition of `main'; /tmp/ccyTEEur.o:boxes.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status