#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll n;
cin>>n;
vector<ll>a(n),p(n),v(n),c(n,0);
vector<vector<ll>>g(n);
for(ll i=0;i<n;i++)
{
cin>>a[i];
a[i]--;
c[a[i]]++;
}
for(ll i=0;i<n;i++)
{
cin>>p[i];
}
for(ll i=0;i<n;i++)
{
cin>>v[i];
g[a[i]].push_back(v[i]);
}
ll s=0,d=0,f=0;
for(ll i=0;i<n;i++)
{
d+=c[i]-1;
if(d<s)
{
s=d;
f=(i+1)%n;
}
}
multiset<ll>k;
ll w=0;
for(ll i=0;i<n;i++)
{
ll j=(f+i)%n;
for(ll x:g[j])
{
k.insert(x);
}
auto l=k.lower_bound(p[j]);
if(l==k.end())
{
k.erase(k.begin());
}
else
{
w++;
k.erase(l);
}
}
cout<<w<<endl;
return 0;
}