#include<stdio.h>
#define N 100

int n, pos, count = 0;
int pre[N], in[N], post[N];

int find(int in[n], int root){
  int i;
  for(i = 0; i < n; i++){
    if(in[i] ==  root) return i;
  }
  return in[n - 1];
}

void rec(int l, int r){
  int root, m;
  if(l >= r) return;
  root = pre[pos++];
  m = find(in, root);
  rec(l, m);
  rec(m + 1, r);
  post[count++] = root;
}

void solve(){
  int i;
  pos = 0;
  rec(0, n);
  for(i = 0; i < n; i++){
    if(i) printf(" ");
    printf("%d", post[i]);
  }
  printf("\n");
}

int main(){
  int i, k;
  scanf("%d", &n);

  for(i = 0; i < n; i++){
    scanf("%d", &k);
    pre[i] = k;
  }

  for(i = 0; i < n; i++){
    scanf("%d", &k);
    in[i] = k;
  }

  solve();

  return 0;
}