Submission #305608

#TimeUsernameProblemLanguageResultExecution timeMemory
305608LawlietCarnival Tickets (IOI20_tickets)C++17
27 / 100
768 ms51576 KiB
#include "tickets.h"
#include <bits/stdc++.h>

using namespace std;
typedef long long int lli;

long long find_maximum(int k, vector< vector<int> > x) 
{
	int n = x.size();
	int m = x[0].size();

	vector< vector<int> > answer;

	for(int i = 0; i < n; i++) 
		answer.push_back( vector<int>( m , -1 ) );

	lli ans = 0;
	vector< pair<lli,int> > sum;

	for(int i = 0 ; i < n ; i++)
	{
		ans -= x[i][0];
		answer[i][0] = 0;
		sum.push_back( { x[i][0] + x[i].back() , i } );
	}

	sort( sum.begin() , sum.end() );

	while( (int)sum.size() > n/2 )
	{
		int ind = sum.back().second;
		sum.pop_back();

		answer[ind][0] = -1;
		answer[ind].back() = 0;

		ans += x[ind][0] + x[ind].back();
	}

	allocate_tickets( answer );

	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...