Submission #1195681

#TimeUsernameProblemLanguageResultExecution timeMemory
1195681madamadam3Boxes with souvenirs (IOI15_boxes)C++20
0 / 100
0 ms328 KiB
#include "boxes.h" #include <bits/stdc++.h> using namespace std; #define FOR(i, a, b) for (int i = a; i < b; i++) #define pb push_back #define all(x) (x).begin(), (x).end() typedef long long ll; using vi = vector<int>; using vl = vector<ll>; // probably binary search? ll n, k, l; vl p; vl nxt, prev; ll dist(ll p1, ll p2) { if (p1 <= p2) return p2 - p1; else { return (l - p1) + p2; } } ll delivery(int N, int K, int L, int P[]) { n = N, k = K, l = L; // cout << "N = " << n << "K = " << k << " L = " << L << "\n"; FOR(i, 0, n) p.pb(P[i]); // FOR(i, 0, n) { // FOR(j, 0, n) { // cout << "L = " << L << " Dist between " << i << " and " << j << " = " << dist(i, j) << "\n"; // } // } // return min(*max_element(all(p)) + dist(*max_element(all(p)), 0), l - *min_element(all(p)) + dist(*min_element(all(p)), 0)); ll max_pos = *max_element(all(p)); ll min_pos = *min_element(all(p)); ll min_dist = dist(min_pos, l); return min({l, 2LL * max_pos, 2LL * min_dist}); }
#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...