제출 #1305350

#제출 시각아이디문제언어결과실행 시간메모리
1305350neonglitch카니발 티켓 (IOI20_tickets)C++20
16 / 100
263 ms51492 KiB
#include "tickets.h" #include <iostream> #include <vector> #include <algorithm> using namespace std; typedef long long ll; long long find_maximum(int k, std::vector<std::vector<int>> x) { int n = x.size(); int m = x[0].size(); std::vector<std::vector<int>> answer(n,vector<int>(m,-1)); ll ans=0; vector<vector<ll>> pos; for(int i=0;i<n;i++) { for(int j=0;j<k;j++) { answer[i][j]=j; ans-=x[i][j]; } for(int j=m-1;j>=m-k;j--) { int p=k+j-m; pos.push_back({x[i][j]+x[i][p],i,p,j}); } } sort(rbegin(pos),rend(pos)); for(int i=0;i<(n*k)/2;i++) { ans+=pos[i][0]; int l=pos[i][1]; int og=pos[i][2]; int nw=pos[i][3]; answer[l][nw]=og; answer[l][og]=-1; } allocate_tickets(answer); return ans; } // int main() // { // int n,m,k; // cin>>n>>m>>k; // vector<vector<int>> x(n,vector<int>(m)); // for(int i=0;i<n;i++) // { // for(int j=0;j<m;j++) // { // cin>>x[i][j]; // } // } // cout<<find_maximum(k,x)<<endl; // }
#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...