Submission #1210601

#TimeUsernameProblemLanguageResultExecution timeMemory
1210601emptypringlescanEvent Hopping 2 (JOI21_event2)C++17
1 / 100
46 ms1168 KiB
#include <bits/stdc++.h>
using namespace std;
bool cmp(pair<int,int> a, pair<int,int> b){
	return a.second<b.second;
}
int32_t main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	int n,k;
	cin >> n >> k;
	pair<int,int> arr[n];
	for(int i=0; i<n; i++) cin >> arr[i].first >> arr[i].second;
	vector<vector<int> > ans;
	for(int bt=0; bt<(1<<n); bt++){
		if(__builtin_popcount(bt)!=k) continue;
		vector<pair<int,int> > yay;
		for(int i=0; i<n; i++) if(bt&(1<<i)) yay.push_back(arr[i]);
		sort(yay.begin(),yay.end(),cmp);
		int cur=-1,can=0;
		for(auto i:yay) if(i.first>=cur){
			can++;
			cur=i.second;
		}
		if(can==k){
			vector<int> me;
			for(int i=0; i<n; i++) if(bt&(1<<i)) me.push_back(i+1);
			ans.push_back(me);
		}
	}
	sort(ans.begin(),ans.end());
	if(ans.empty()) cout << -1;
	else for(int i:ans[0]) 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...