#include <bits/stdc++.h>
using namespace std;

long long a[32009];
long long a1[32009];


void revers(long long x,long long y){
    long long num=0;

    for(int i=0;i<(x+y)/2-1;i++){
        swap(a1[x+num],a1[y-num]);
        num++;
    }

}

void revers_2(long long x,long long y){
    long long num=0;

    for(int i=0;i<(x+y)/2-1;i++){
        swap(a[x+num],a[y-num]);
        num++;
    }

}


int main() {
    
    long long n,m,ind_m,res=0;

    cin>>n;

    for(int i=1;i<=n;i++){
        cin>>a[i];
        a1[i]=a[i];
    }

    for(int i=1;i<=n;i++){
        m=a1[i];
        ind_m=i;

        for(int j=i;j<=n;j++){
            if(a1[j]<m){
                m=a1[j];
                ind_m=j;
            }
        }

        /*cout<<i<<' '<<ind_m<<"     ";
        for(int i=1;i<=n;i++){
            cout<<a1[i]<<' ';
        }
        cout<<endl;*/


        if(ind_m!=i){
            revers(i,ind_m);
            res++;
        }
        
    }

    cout<<res<<endl;

    for(int i=1;i<=n;i++){
        m=a[i];
        ind_m=i;

        for(int j=i;j<=n;j++){
            if(a[j]<m){
                m=a[j];
                ind_m=j;
            }
        }

        if(ind_m!=i){
            cout<<i<<' '<<ind_m<<endl;
            revers_2(i,ind_m);
        }
        
    }

}
