Submission #307145

#TimeUsernameProblemLanguageResultExecution timeMemory
307145Ruxandra985Carnival Tickets (IOI20_tickets)C++14
11 / 100
2 ms768 KiB
#include <bits/stdc++.h> #include "tickets.h" #define DIMN 1510 #define MLD 1000000000 using namespace std; pair <int , int> v[2 * DIMN]; int f[DIMN]; long long find_maximum(int k, vector<vector<int>> x) { int n = x.size() , i , pv , pw , elem; int m = x[0].size(); long long sol = 0; vector<vector<int>> answer; for (i = 0; i < n; i++) { vector<int> row; row.resize(m , -1); answer.push_back(row); } if (m == 1){ for (i = 0 ; i < n ; i++){ answer[i][0] = 0; v[i] = make_pair(x[i][0] , i); } sort (v , v + n); for (i = 0 ; i < n ; i++){ if (i < n / 2) sol = sol - v[i].first; else sol = sol + v[i].first; } } else if (k == 1){ elem = 0; for (i = 0 ; i < n ; i++){ v[++elem] = make_pair(x[i][0] , i + 1); v[++elem] = make_pair(MLD - x[i].back() , -i - 1); } sort (v + 1 , v + elem + 1); sol = 1LL * MLD * n / 2; for (i = 1 ; i <= elem ; i++){ if (f[max(v[i].second , -v[i].second) - 1] == 0){ sol -= v[i].first; if (v[i].second >= 0) answer[v[i].second - 1][0] = 0; else answer[-v[i].second - 1][m - 1] = 0; f[max(v[i].second , -v[i].second) - 1] = 1; } } } allocate_tickets(answer); return sol; }

Compilation message (stderr)

tickets.cpp: In function 'long long int find_maximum(int, std::vector<std::vector<int> >)':
tickets.cpp:13:25: warning: unused variable 'pv' [-Wunused-variable]
   13 |  int n = x.size() , i , pv , pw , elem;
      |                         ^~
tickets.cpp:13:30: warning: unused variable 'pw' [-Wunused-variable]
   13 |  int n = x.size() , i , pv , pw , elem;
      |                              ^~
#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...