#include<bits/stdc++.h>
using namespace std;
#define FOR(i,a,b) for (int i=(a);i<(b);i++)
#define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--)
#define REP(i,n) for (int i=0;i<(n);i++)
#define RREP(i,n) for (int i=(n)-1;i>=0;i--)
vector<int>v1;
vector<int>v2;
vector<int>ans;
vector<int>ans2;
int main(){
	int N;
	cin>>N;
	REP(i,N){
            int a;
            cin>>a;
            v1.push_back(a);
            v2.push_back(a);
        }
        sort(v2.begin(),v2.end());
        REP(i,N){
            if(v1[i]==v2[i]) continue;
            for(int j=i+1;j<N;j++){
                if(v1[j]==v2[i]){
                   int temp=v1[i];
                   v1[i]=v1[j];
                   v1[j]=temp;
                   ans.push_back(i);
                   ans2.push_back(j);
                }
            }
        }
        cout<<ans.size()<<endl;
        REP(i,ans.size()){
           cout<<ans[i]<<" "<<ans2[i]<<endl;
        }
        int A;
        cin>>A;
	return(0);
}