This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include"tickets.h"
#include<bits/stdc++.h>
#ifndef EVAL
#include"grader.cpp"
#endif
using namespace std;
long long find_maximum(int k,vector<vector<int>>x){
int n=x.size();
int m=x[0].size();
vector<pair<int,int>>pt(n,{0,m-1});
vector<vector<int>>answer(n,vector<int>(m,-1));
long long res=0;
int game_id=0;
while(k--){
vector<pair<int,int>>a;
for(int i=0;i<n;i++)
a.push_back({x[i][pt[i].first]+x[i][pt[i].second],i});
sort(a.begin(),a.end());
int i;
for(i=0;i<(n>>1);i++){
res-=x[a[i].second][pt[a[i].second].first];
answer[a[i].second][pt[a[i].second].first]=game_id;
pt[a[i].second].first++;
}
for(;i<n;i++){
res+=x[a[i].second][pt[a[i].second].second];
answer[a[i].second][pt[a[i].second].second]=game_id;
pt[a[i].second].second--;
}
game_id++;
}
allocate_tickets(answer);
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |