#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 5;
int n, a[N], b[N];
multiset<int> st;
int main() {
  int n;
  cin >> n;
  for (int i = 0; i < n; i++) {
    int x;
    cin >> x;
    a[x - 1] = i;
  }
  for (int i = 0; i < n && cin >> b[i]; i++) st.insert(i - a[b[i] - 1]);
  for (int i = 0; i < n; i++) {
    b[i]--;
    auto it = st.lower_bound(i);
    int ans = N;
    if (it != st.end()) ans = min(ans, *it - i);
    if (it != st.begin()) ans = min(ans, i - *(--it));
    cout << ans << '\n';
    int x = i - a[b[i]];
    st.erase(st.find(x));
    st.insert(x + n);
  }
  return 0;
}
