#include <stdio.h>
void re(int ,int);
void solve(int,int);
int pre[100],in[100],n,pos,post[100],k;
int main(){
  int i,root;
  scanf("%d",&n);
  for(i=0;i<n;i++)scanf("%d",&pre[i]);
  for(i=0;i<n;i++)scanf("%d",&in[i]);
  solve(0,n);
  printf("\n");
  return 0;
}

void re(int l,int r){
  int m,c,i;
  if(l>=r)return;
  c=pre[pos++];
  for(i=0;i<n;i++){
    if(c==in[i]){
      m=i;
    }
  }
  re(l,m);
  re(m+1,r);
  post[k++]=c;
}

void solve(int l,int r){
  re(l,r);
  int i;
  for(i=0;i<n;i++){
    if(i!=0)printf(" ");
    printf("%d",post[i]);
  }
}

