#include <bits/stdc++.h>

using namespace std;
typedef pair<int,int> P;
int n;
int t[55];
int m;
int j;
vector<P> ans;
int main() {
  cin >> n;

  bool flag = false;
  for(int i = 0; i < n; i++) {
    cin >> t[i];

    if(m < abs(t[i])) {
      m = abs(t[i]);
      j = i;
      if(t[i] > 0) flag = true;
      else flag = false;
    }
  }


  for(int i = 0; i < n; i++) {
    if(flag) t[i] += m;
    else t[i] -= m;
    ans.push_back(P(j,i));
  }
  
  

  if(flag) {
    for(int i = 1; i < n; i++) {
      ans.push_back(P(i-1,i));
    }
  }
  else {
    for(int i = n-1; i > 0; i--) {
      ans.push_back(P(i,i-1));
    }
  }

  cout << ans.size() << endl;

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