#include <bits/stdc++.h>
using namespace std;
inline long long read() {
  long long x = 0, f = 1;
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') f = -1;
    ch = getchar();
  }
  while (ch <= '9' && ch >= '0') {
    x = x * 10 + ch - '0';
    ch = getchar();
  }
  return x * f;
}
long long n;
long long ans[100005 << 2];
long long a[100005 << 2];
long long tag[100005 << 2];
long long t[100005 << 2];
inline void pushdown(long long l, long long r, long long rt) {
  if (tag[rt]) {
    tag[rt << 1] = max(tag[rt << 1], tag[rt]);
    tag[rt << 1 | 1] = max(tag[rt << 1 | 1], tag[rt]);
    t[rt << 1] = max(t[rt << 1], tag[rt]);
    t[rt << 1 | 1] = max(t[rt << 1 | 1], tag[rt]);
    tag[rt] = 0;
  }
}
inline void update(long long l, long long r, long long x, long long L,
                   long long R, long long rt) {
  if (l <= L && r >= R) {
    t[rt] = max(t[rt], x);
    tag[rt] = max(tag[rt], x);
    return;
  }
  pushdown(L, R, rt);
  long long mid = (L + R) >> 1;
  if (l <= mid) update(l, r, x, L, mid, rt * 2);
  if (r > mid) update(l, r, x, mid + 1, R, rt * 2 + 1);
}
inline long long query(long long pos, long long l, long long r, long long rt) {
  if (l == r) {
    return t[rt];
  }
  pushdown(l, r, rt);
  long long mid = (l + r) >> 1;
  if (pos <= mid)
    return query(pos, l, mid, rt * 2);
  else
    return query(pos, mid + 1, r, rt * 2 + 1);
}
signed main() {
  n = read();
  for (long long i = 1; i <= n; i++) a[i] = a[i + n] = a[i + 2 * n] = read();
  long long x = 1;
  memset(ans, -1, sizeof(ans));
  for (long long i = 1; i <= 3 * n; i++) {
    update(x, min(i, n), a[i], 1, n, 1);
    long long l = x;
    long long r = min(i, n);
    long long mid;
    long long y = -1;
    while (l <= r) {
      mid = (l + r) >> 1;
      if (query(mid, 1, n, 1) > 2 * a[i]) {
        y = mid;
        l = mid + 1;
      } else
        r = mid - 1;
    }
    if (y != -1) {
      for (long long k = x; k <= y; k++) ans[k] = i - k;
      x = y + 1;
    }
    if (x > n) break;
  }
  for (long long i = 1; i <= n; i++) cout << ans[i] << " ";
  return 0;
}
