# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
300591 | ecnerwala | Carnival Tickets (IOI20_tickets) | C++17 | 962 ms | 62312 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "tickets.h"
#include <bits/stdc++.h>
long long find_maximum(int K, std::vector<std::vector<int>> X) {
int N = int(X.size());
int M = int(X[0].size());
std::vector<std::vector<int>> answer(N, std::vector<int>(M, -1));
struct cnd_t {
int val;
int i;
};
std::vector<cnd_t> cnds; cnds.reserve(N*K);
int64_t tot_val = 0;
{
std::vector<std::pair<int, int>> vals(M);
for (int i = 0; i < N; i++) {
for (int j = 0; j < K; j++) {
tot_val -= X[i][j];
cnds.push_back({X[i][j] + X[i][j+(M-K)], i});
}
}
}
auto md = cnds.begin() + N/2*K;
std::nth_element(cnds.begin(), md, cnds.end(),
[&](const auto& a, const auto& b) { return a.val > b.val; });
cnds.erase(md, cnds.end());
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |