제출 #886379

#제출 시각아이디문제언어결과실행 시간메모리
886379NeroZein카니발 티켓 (IOI20_tickets)C++17
27 / 100
418 ms51512 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(); for (int i = 0; i < n; ++i) { sort(x[i].begin(), x[i].end()); } 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...