#include <stdio.h>
#define MAX 40

int n,Preorder[MAX],Inorder[MAX];

void Tree(int,int);

int main(){
  int i;

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

  Tree(0,n);

  return 0;
}

void Tree(int Light,int Right){
  static int i,k;
  int c,m,j;

  if(Light >= Right)return;

  c = Preorder[i++];

  for(j = Light ; j < Right ; j++){
      if(c == Inorder[j])break;
  }

  Tree(Light,j);
  Tree(j+1,Right);

  if(k == n - 1) printf("%d\n",c);
  else printf("%d ",c);
  k++;
}

