제출 #1270766

#제출 시각아이디문제언어결과실행 시간메모리
1270766abdelhakim카니발 티켓 (IOI20_tickets)C++20
27 / 100
257 ms51460 KiB
#include "tickets.h" #include <bits/stdc++.h> #define dbg(x) cerr<<#x<<' '<<x<<endl; #define ll long long using namespace std; void printvec(vector<ll>& vec) { for (auto &&e : vec) { cout << e << ' '; } cout << endl; } long long find_maximum(int k, std::vector<std::vector<int>> x) { int n = x.size(); int m = x[0].size(); vector<pair<ll,ll>> fe(n,{0,m-1}); vector<vector<int>> ans(n,vector<int>(m,-1)); ll sm=0; for (int r=0;r<k;r++) { vector<pair<ll,ll>> v; vector<bool> bl(n); for (int i=0;i<n;i++) { sm-=x[i][fe[i].first]; v.push_back({x[i][fe[i].second]+x[i][fe[i].first],i}); } sort(v.begin(), v.end(),greater<pair<ll,ll>>()); for (int i=0;i<n/2;i++) { sm+=v[i].first; bl[v[i].second]=1; } for (int i=0;i<n;i++) { if(bl[i]) ans[i][fe[i].second]=r; else ans[i][fe[i].first]=r; } } allocate_tickets(ans); return sm; }
#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...