#include<bits/stdc++.h>
using namespace std;
// #define int long long
// const int mod=1e9+7;
// vector<int> prime;
// int power(int x, int y){
//     int res = 1;
//     x = x % mod;
//     if (x == 0) return 0; 
//     while (y > 0){
//         if (y & 1)
//             res = (res*x) % mod;
//         y = y>>1;
//         x = (x*x) % mod;
//     }
//     return res;
// }

// int inv(int n){
//     return power(n,mod-2);
// }

// void div(int n){
//     prime.resize(n+1,0);
//     prime[1]=1;
//     for(int i=2;i<=n;i++){
//         if(prime[i]==0){
//             for(int j=1;j*i<=n;j++){
//                 if(prime[i*j]==0)prime[j*i]=i;
//             }
//         }
//     }
// }
bool f(vector<long long> v){
    long long n=v.size(),i;
    for(i=1;i<n;i++){
        if(v[i]<v[i-1])return false;
    }
    return true;
}
void g(vector<long long>&v){
    long long n=v.size(),i;
    for(i=0;i<n;i+=2){
        long long temp=v[i];
        v[i]=v[i+1];
        v[i+1]=temp;
    }
}
void h(vector<long long>&v){
    long long n=v.size(),i;
    for(i=0;i<(n/2);i+=1){
        long long temp=v[i];
        v[i]=v[i+(n/2)];
        v[i+(n/2)]=temp;
    }
}
int main(){
    cin.tie(NULL);
    ios_base::sync_with_stdio(false);
    // freopen("input.txt", "r", stdin); 
    // freopen("output.txt", "w", stdout);
    int tt=1; 
    while(tt--){
        long long n,i,x=0,br=-1; cin>>n; n*=2;
        vector<long long> v(n),a(n),b(n);
        for(i=0;i<n;i++){cin>>v[i]; a[i]=v[i]; b[i]=v[i];}
        while(true){
            if(f(a) || f(b)){br=x; break;}
            if((a==v || b==v) && x>0)break;
            if(x%2){
                g(a);
                h(b);
            }
            else{
                g(b);
                h(a);
            }
            x++;
        }
        cout<<br;
    }
    return 0;
}