Submission #823001

#TimeUsernameProblemLanguageResultExecution timeMemory
823001Sohsoh84Carnival Tickets (IOI20_tickets)C++17
27 / 100
459 ms58148 KiB
#include "tickets.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<ll, ll> pll; #define all(x) (x).begin(), (x).end() #define X first #define Y second #define sep ' ' #define debug(x) cerr << #x << ": " << x << endl; const int MAXN = 1500 + 10; int n, m, PL[MAXN], PR[MAXN]; ll ans; ll find_maximum(int k, vector<vector<int>> A) { n = A.size(); m = A[0].size(); for (int i = 0; i < n; i++) sort(all(A[i])); // is_sorted vector<vector<int>> res; res.resize(n); for (auto& e : res) { e.resize(m); for (int& x : e) x = -1; } vector<pair<pll, pll>> vec; for (int i = 0; i < n; i++) vec.push_back({{A[i].front() + A[i].back(), i}, {A[i].front(), A[i].back()}}); sort(all(vec)); for (int i = 0; i < n / 2; i++) { res[vec[i].X.Y][0] = 0; ans -= A[vec[i].X.Y][0]; } for (int i = n / 2; i < n; i++) { res[vec[i].X.Y][m - 1] = 0; ans += A[vec[i].X.Y][m - 1]; } allocate_tickets(res); return ans; }
#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...