#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  cin >> n;
  int p[n + 1], s[n + 1];
  int spos[n + 1];
  int state[n + 1];
  for (int i = 1; i <= n; i++) {
    scanf("%d", p + i);
  }
  for (int i = 1; i <= n; i++) {
    scanf("%d", s + i);
    spos[s[i]] = i;
  }
  for (int i = 1; i <= n; i++) {
    state[i] = i - spos[p[i]];
  }
  vector<int> swaps[2];
  int cost = 0;
  while (1) {
    bool stop = true;
    int left = -1;
    for (int i = 1; i <= n; i++) {
      if (state[i] == 0) continue;
      stop = false;
      if (state[i] < 0)
        left = i;
      else if (left != -1 && state[i] > 0) {
        swaps[0].push_back(left);
        swaps[1].push_back(i);
        swap(p[left], p[i]);
        swap(state[left], state[i]);
        cost += i - left;
        if (p[left] == s[left]) state[left] = 0;
        if (p[i] == s[i]) {
          state[i] = 0;
          left = -1;
        } else {
          left = i;
        }
      }
    }
    if (stop) break;
  }
  cout << cost << endl;
  cout << swaps[0].size() << endl;
  ;
  for (int i = 0; i < swaps[0].size(); i++) {
    printf("%d %d\n", swaps[0][i], swaps[1][i]);
  }
  return 0;
}
