Submission #945937

#TimeUsernameProblemLanguageResultExecution timeMemory
945937hmm789Road Construction (JOI21_road_construction)C++14
0 / 100
8073 ms9392 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define INF 1000000000000000000
#define MOD 1000000007

const int B = 650;

int32_t main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	int n, k;
	cin >> n >> k;
	int x[n], y[n];
	for(int i = 0; i < n; i++) cin >> x[i] >> y[i];
	priority_queue<int> pq;
	sort(x, x+n);
	for(int i = 0; i < n; i++) {
		for(int j = i+1; j < min(n, i+B); j++) {
			pq.push(x[j]-x[i]);
			if((int)pq.size() > k) pq.pop();
		}
	}
	vector<int> ans;
	while(pq.size()) {
		ans.push_back(pq.top());
		pq.pop();
	}
	reverse(ans.begin(), ans.end());
	for(int i : ans) cout << i << '\n';
}

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