Submission #18116

#TimeUsernameProblemLanguageResultExecution timeMemory
18116cometSchools (IZhO13_school)C++98
25 / 100
190 ms22656 KiB
#include <cstdio>
#include <queue>
#include <algorithm>

using namespace std;
typedef long long ll;
typedef pair<ll,ll> pp;

int N,M,S;
ll a[300010],b[300010];

priority_queue <pp> Q1,Q2;

int main(){

	scanf("%d%d%d",&N,&M,&S);

	for(int i=0;i<N;i++){
		scanf("%lld%lld",&a[i],&b[i]);
	}

	ll sum=0;

	for(int i=0;i<N;i++){
		sum+=a[i];
		Q1.push(pp(b[i]-a[i],i));
	}

	for(int i=0;i<N-M;i++){
		ll v=Q1.top().second;Q1.pop();
		sum+=b[v]-a[v];
		Q2.push(pp(-b[v],i));
	}

	for(int i=0;i<N-M-S;i++){
		ll t=Q2.top().first;Q2.pop();
		sum+=t;
	}

	printf("%lld\n",sum);

}
#Verdict Execution timeMemoryGrader output
Fetching results...