Submission #342784

#TimeUsernameProblemLanguageResultExecution timeMemory
342784Gurban학교 설립 (IZhO13_school)C++17
25 / 100
111 ms12768 KiB
#include <bits/stdc++.h>
using namespace std;

using ll = long long;

const int maxn=3e5+5;
int n,s[2],a[maxn],b[maxn];
int vis[maxn];
vector<pair<int,pair<int,int>>>v;
ll ans;

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);

	cin >> n >> s[0] >> s[1];
	for(int i = 1;i <= n;i++){
		cin >> a[i] >> b[i];
		v.push_back({a[i]-b[i],{a[i],i}});
	}
	sort(v.begin(),v.end());
	reverse(v.begin(),v.end());
	for(int i = 0;i < s[0];i++) ans += v[i].second.first,vis[v[i].second.second]=1;
	vector<int>nw;
	for(int i = 1;i <= n;i++){
		if(vis[i]) continue;
		nw.push_back(b[i]);
	}
	sort(nw.begin(),nw.end());
	reverse(nw.begin(),nw.end());
	for(int i = 0;i < s[1];i++) ans += nw[i];
	cout<<ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...