#include<bits/stdc++.h>
using namespace std;
const int N=20,M=2e6,inf=1e9;
int n,a[N],b[N],mx,f[N][M],bit[M],ans=1e9;
void cmin(int &x,int y){y<x?x=y:0;}
int main(){
	scanf("%d",&n);mx=1<<n;
	for(int i=0;i<n;i++)scanf("%d",&a[i]);
	for(int i=0;i<n;i++)scanf("%d",&b[i]);
	for(int i=0;i<n;i++)if(i&1)swap(a[i],b[i]);
	for(int i=1;i<mx;i++)bit[i]=bit[i>>1]+(i&1);
	memset(f,0x3f,sizeof(f));
	for(int i=0;i<n;i++)f[i][1<<i]=0;
	for(int i=1;i<mx;i++)
		for(int j=n-1,l=0;~j;j--)
			if(!(i>>j&1)){
				int y=bit[i]&1?b[j]:a[j];
				for(int k=0;k<n;k++)if(i>>k&1){
					int x=bit[i]&1?a[k]:b[k];
					if(x<=y)cmin(f[j][i^1<<j],f[k][i]+l);
				}
			}
			else l++;
	for(int i=0;i<n;i++)cmin(ans,f[i][mx-1]);
	if(ans>n*n)puts("-1");
	else printf("%d\n",ans);
}