#include <bits/stdc++.h>
using namespace std;
int bit[200001];
int bit_n;
void init(int n) {
  bit_n = n;
  for (int i = 0; i <= bit_n; i++) bit[i] = 0;
}
void add(int p, int x) {
  p++;
  while (p <= bit_n) {
    bit[p] += x;
    p += p & -p;
  }
}
int sum(int p) {
  p++;
  int s = 0;
  while (p > 0) {
    s += bit[p];
    p -= p & -p;
  }
  return s;
}
int s[200001];
int main() {
  int n, i;
  scanf("%d", &n);
  init(n);
  for (i = 0; i < n; i++) s[i] = 0;
  for (i = 0; i < n; i++) {
    int a;
    scanf("%d", &a);
    s[i] += a - sum(a - 1);
    add(a, 1);
  }
  init(n);
  for (i = 0; i < n; i++) {
    int b;
    scanf("%d", &b);
    s[i] += b - sum(b - 1);
    add(b, 1);
  }
  reverse(s, s + n);
  for (i = 0; i < n; i++) {
    s[i + 1] += s[i] / (i + 1);
    s[i] %= (i + 1);
  }
  init(n);
  for (i = n - 1; i >= 0; i--) {
    int l = 0, r = n;
    while (r - l > 1) {
      int m = (l + r) / 2;
      if (m - sum(m - 1) > s[i])
        r = m;
      else
        l = m;
    }
    printf("%d ", l);
    add(l, 1);
  }
  puts("");
  return 0;
}
