Submission #625307

#TimeUsernameProblemLanguageResultExecution timeMemory
625307TrunktyCarnival Tickets (IOI20_tickets)C++14
27 / 100
469 ms77892 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
typedef long long ll;
//#define ll ll;

#include "tickets.h"

ll pick[1505][1505];

ll find_maximum(int k, vector<vector<int>> x) {
	ll n = x.size();
	ll m = x[0].size();
	vector<vector<ll>> v;
	for(ll i=0;i<n;i++){
		v.push_back({x[i][0]+x[i][m-1],i});
	}
	sort(v.begin(),v.end());
	vector<ll> nums;
	for(ll i=0;i<n/2;i++){
		nums.push_back(x[v[i][1]][0]);
		pick[v[i][1]][0] = 1;
	}
	for(ll i=n/2;i<n;i++){
		nums.push_back(x[v[i][1]][m-1]);
		pick[v[i][1]][m-1] = 1;
	}
	sort(nums.begin(),nums.end());
	//
	ll ret=0,comp=nums[n/2];
	for(ll i:nums){
		ret += abs(i-comp);
	}
	//
	vector<vector<int>> answer;
	for(ll i=0;i<n;i++) {
		vector<int> row(m);
		for(ll j=0;j<m;j++) {
			row[j] = pick[i][j]-1;
		}
		answer.push_back(row);
	}
	allocate_tickets(answer);
	return ret;
}
#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...