#4 超时了,大佬帮忙看下咋调啊
#include<stdio.h>
int a[100003],b[100003];
bool aa[100003],bb[100003];
void in(int &x){
char c=getchar(),f=1;
while ((c<'0'||c>'9')&&c!='-') c=getchar();
if (c=='-'){
f=-1,
c=getchar();
}
for (x=0;c>='0'&&c<='9';c=getchar())x=x*10+c-'0';
x*=f;
}
int main(void){
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++){
in(a[i]);
aa[i]=true;
}
for(int i=1;i<=n;i++){
in(b[i]);
bb[i]=true;
}
int ans=0;
for(int i=1;i<=n;i++){
for(int j=i;j<=n;j++){
if(b[j]>a[i]) break;
if(b[j]==a[i]){
if(bb[j]&&aa[i]){
ans+=a[i];
bb[j]=aa[i]=false;
break;
}
}
}
}
for(int i=n;i>=1;i--){
for(int j=i;j>=1;j--){
if(b[j]<a[i]){
if(bb[j]&&aa[i]){
ans+=b[j];
aa[i]=bb[j]=false;
break;
}
}
else{
if(bb[j]&&aa[i]){
ans+=a[i];
aa[i]=bb[j]=false;
break;
}
}
}
}
printf("%d\n",ans);
return 0;
}