Submission #886378

#TimeUsernameProblemLanguageResultExecution timeMemory
886378NeroZeinCarnival Tickets (IOI20_tickets)C++17
27 / 100
389 ms51488 KiB
#include "tickets.h" #include <bits/stdc++.h> using namespace std; long long find_maximum(int k, vector<vector<int>> x) { int n = x.size(); int m = x[0].size(); long long ret = 0; vector<int> p(n), s(n, m - 1); vector<vector<int>> answer(n, vector<int> (m, -1)); for (int round = 0; round < k; ++round) { vector<pair<int, int>> vec; for (int i = 0; i < n; ++i) { vec.emplace_back(x[i][p[i]] + x[i][s[i]], i); } sort(vec.begin(), vec.end()); for (int i = 0; i < n; ++i) { int id = vec[i].second; if (i < n / 2) { ret -= x[id][p[id]]; answer[id][p[id]] = round; p[id]++; } else { ret += x[id][s[id]]; answer[id][s[id]] = round; s[id]--; } } } allocate_tickets(answer); return ret; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...