#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N;
if(!(cin >> N)) return 0;
vector<int> P(N+1), pos(N+1);
for (int i=1;i<=N;i++){ cin >> P[i]; pos[P[i]]=i; }
vector<pair<int,int>> ops;
for (int i=1;i<=N;i++){
int p = pos[i];
if (p==i) continue;
ops.emplace_back(i,p);
reverse(P.begin()+i, P.begin()+p+1);
for (int k=i;k<=p;k++) pos[P[k]]=k;
}
cout << (int)ops.size() << '\n';
for (auto &op: ops) cout << op.first << ' ' << op.second << '\n';
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CiAgICBpbnQgTjsgCiAgICBpZighKGNpbiA+PiBOKSkgcmV0dXJuIDA7CiAgICB2ZWN0b3I8aW50PiBQKE4rMSksIHBvcyhOKzEpOwogICAgZm9yIChpbnQgaT0xO2k8PU47aSsrKXsgY2luID4+IFBbaV07IHBvc1tQW2ldXT1pOyB9CiAgICB2ZWN0b3I8cGFpcjxpbnQsaW50Pj4gb3BzOwogICAgZm9yIChpbnQgaT0xO2k8PU47aSsrKXsKICAgICAgICBpbnQgcCA9IHBvc1tpXTsKICAgICAgICBpZiAocD09aSkgY29udGludWU7CiAgICAgICAgb3BzLmVtcGxhY2VfYmFjayhpLHApOwogICAgICAgIHJldmVyc2UoUC5iZWdpbigpK2ksIFAuYmVnaW4oKStwKzEpOwogICAgICAgIGZvciAoaW50IGs9aTtrPD1wO2srKykgcG9zW1Bba11dPWs7CiAgICB9CiAgICBjb3V0IDw8IChpbnQpb3BzLnNpemUoKSA8PCAnXG4nOwogICAgZm9yIChhdXRvICZvcDogb3BzKSBjb3V0IDw8IG9wLmZpcnN0IDw8ICcgJyA8PCBvcC5zZWNvbmQgPDwgJ1xuJzsKICAgIHJldHVybiAwOwp9