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

long long a1[3200000];
vector <pair<int,int>> gf;

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

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

}

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

    cin>>n;

    for(int i=1;i<=n;i++){
        cin>>a1[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){
            gf.push_back(make_pair(i,ind_m));
            revers(i,ind_m);
            res++;
        }
        
    }

    cout<<res<<endl;

    for(int i=0;i<gf.size();i++){
        cout<<gf[i].first<<' '<<gf[i].second<<endl;
    }

}