#include <iostream>
#include <vector>
#include <algorithm>
#include <cstdlib>
using namespace std;
struct ab{
int diff;
int a;
int b;
};
int main() {
ios::sync_with_stdio(0);
cin.tie(NULL);
int n,x,y;
cin>>n>>x>>y;
int a[(int)(1e5)+2],b[(int)(1e5)+2];
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<n;i++)
cin>>b[i];
ab c[(int)(1e5)+2];
for(int i=0;i<n;i++){
c[i].diff=a[i]-b[i];
c[i].a=a[i];
c[i].b=b[i];
}
sort(c,c+n,[](auto x,auto y){
return x.diff>y.diff;
});
int sum=0;
for(int i=0;i<min(x,n-y);i++)
sum+=c[i].a;
for(int i=min(x,n-y);i<max(x,n-y);i++)
sum+=(c[i].diff>0?c[i].a:c[i].b);
for(int i=max(x,n-y);i<n;i++)
sum+=c[i].b;
cout<<sum;
return 0;
}
Comments
Post a Comment