#pragma GCC optimize("O3")
#include <bits/stdc++.h>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
    int n;cin>>n;
    vector<int>l(n);
    vector<int>h(n);
    for(int i=0;i<n;i++){cin>>l[i];h[i]=l[i];}
    sort(h.begin(),h.end());
    vector<pair<int,int>>ans;
    for(int i=0;i<n;i++){
        if(l[i]!=h[i]){
            for(int j=i+1;j<n;j++){
                if(l[j]==h[i]){
                    ans.push_back({i+1,j+1});
                    for(int k=i;k<(int)(i+j)/2+1;k++){
                        swap(l[k],l[j-(k-i)]);
                    }
                    break;

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

    return 0;
}
