Submission #619492

#TimeUsernameProblemLanguageResultExecution timeMemory
619492Mounir선물상자 (IOI15_boxes)C++14
20 / 100
8 ms320 KiB
#include "boxes.h" #include <bits/stdc++.h> #define all(x) x.begin(), x.end() #define chmax(x, v) x = max(x, v) #define chmin(x, v) x = min(x, v) #define pii pair<int, int> #define pb push_back #define sz(x) (int)x.size() #define x first #define y second #define int long long using namespace std; const int OO = 1e18; int delivery(signed nTeams, signed bSup, signed nSections, signed p[]) { int mini = OO; for (int cut = -1; cut < nTeams; ++cut){ vector<int> positions; for (int i = cut + 1; i < nTeams; ++i) positions.pb(p[i] - nSections); for (int i = 0; i <= cut; ++i) positions.pb(p[i]); int sum = 0; for (int i = 0; i < nTeams; i += bSup){ int deb = i, fin = i + bSup - 1; if (i >= nTeams) i = nTeams - 1; int coutCur = 0; if (positions[deb] * positions[fin] >= 0) // meme signe coutCur = max(abs(positions[deb]), abs(positions[fin])); else coutCur = abs(positions[deb]) + abs(positions[fin]); coutCur *= 2; chmin(coutCur, (int)nSections); sum += coutCur; } /* for (int& position : positions) cout << position << " "; cout << endl; cout << sum << endl;*/ chmin(mini, sum); } return mini; }
#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...