#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;
      }

