      #include<stdio.h>


      int P[41],I[41],Q[41],n,now=0,s;

      int Find(int c)
      {

        int i;

        for(i=0;i<n;i++){
          if(c==I[i])return i;
        }

        return 0;

      }

      void Rec(int l,int r)
      {
        int c,n;

        if(l>=r)return;

        c=P[now++];
        n=Find(c);

        Rec(l,n);
        Rec(n+1,r);

        Q[s++]=c;

      }



      int main()
      {
        int i;

        scanf("%d",&n);

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

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

        Rec(0,n);

        for(i=0;i<n-1;i++){
          printf("%d ",Q[i]);
        }

        printf("%d\n",Q[i]);

      return 0;
      }

