제출 #307922

#제출 시각아이디문제언어결과실행 시간메모리
307922jwvg0425카니발 티켓 (IOI20_tickets)C++17
11 / 100
2 ms768 KiB
#include "tickets.h" #include <vector> #include <algorithm> #define all(x) x.begin(), x.end() using namespace std; using i64 = long long int; struct Ticket { int color; int idx; int value; }; i64 find_maximum(int k, vector<vector<int>> x) { int n = x.size(); int m = x[0].size(); vector<Ticket> tickets; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { Ticket t; t.color = i; t.idx = j; t.value = x[i][j]; tickets.push_back(t); } } sort(all(tickets), [](const Ticket& l, const Ticket& r) { return l.value < r.value; }); i64 ret = 0; vector<vector<int>> ans(n, vector<int>(m, -1)); vector<int> nxt(n + 1); int l = 0, r = n * m - 1; while (l < r) { ret += tickets[r].value - tickets[l].value; ans[tickets[l].color][tickets[l].idx] = nxt[tickets[l].color]; nxt[tickets[l].color]++; ans[tickets[r].color][tickets[r].idx] = nxt[tickets[r].color]; nxt[tickets[r].color]++; l++; r--; } allocate_tickets(ans); 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...