#include<bits/stdc++.h>
using namespace std;
//a数组代表小X,b数组代表电脑,f数组代表标记数组,如果该数被比较过就标记为1
int n,a[10000],b[10000],f[10000],ans=0;
int main()
{
cin>>n;
//读入小X的数据
for (int i=1;i<=2*n;i++)
{
cin>>a[i];
}
//读入电脑的数据
for (int i=1;i<=2*n;i++)
{
cin>>b[i];
}
//小X全部排序
sort(a+1,a+2*n+1);
//电脑前一半排序
sort(b+1,b+n+1);
//电脑后一半排序
sort(b+n+1,b+2*n+1);
//前一半,拿a数组的前一半数和b[i](前一半)比较,找到第一个比b[i]小的数,并标记该数比较过
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
{
//如果a[j]没被用过,且比b[i]小,赛马成功
if ((f[j]==0)&&(a[j]<b[i]))
{
//标记a[j]被用过了
f[j]=1;
ans+=1;
break;
}
}
}
//后一半,用a数组的每个数和b[i]比较(b[i]是后一半),找到第一个比b[i]大的数
for (int i=n+1;i<=2*n;i++)
{
for (int j=1;j<=n*2;j++)
{
if ((f[j]==0)&&(a[j]>b[i]))
{
f[j]=1;
ans+=1;
break;
}
}
}
cout<<ans<<endl;
return 0;
}
/**************************************************************
Problem: 1537
User: admin
Language: C++
Result: Accepted
Time:66 ms
Memory:2196 kb
****************************************************************/