#include <bits/stdc++.h>
using namespace std;
int main() {
  multiset<int> s;
  int pos[100009];
  int b[100009];
  int i, j, n;
  scanf("%d", &n);
  for (i = 1; i <= n; i++) {
    scanf("%d", &j);
    pos[j] = i;
  }
  for (i = 1; i <= n; i++) {
    cin >> b[i];
    s.insert(i - pos[b[i]]);
  }
  for (i = 0; i < n; i++) {
    int al = 100009;
    multiset<int>::iterator j = s.lower_bound(i);
    if (j != s.end()) al = min(al, (*j) - i);
    if (j != s.begin()) {
      j--;
      al = min(al, i - (*j));
    }
    cout << al << endl;
    j = s.find(i + 1 - pos[b[i + 1]]);
    s.erase(j);
    s.insert(n - pos[b[i + 1]] + i + 1);
  }
}
