#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
vector <int> pre,in,post;
int pos=0;
void rec(int l,int r){
    if (l>=r)
        return;
    int root=pre[pos++];
    int mid=distance(in.begin(),find(in.begin(),in.end(),root));
    rec(l,mid);
    rec(mid+1,r);
    post.push_back(root);
}
int main(){
    int n;
    cin>>n;
    int temp;
    for(int i=0;i<n;i++){
        cin>>temp;
        pre.push_back(temp);
    }
    for(int i=0;i<n;i++){
        cin>>temp;
        in.push_back(temp);
    }
    rec(0,n);
    for(int i=0;i<n-1;i++)
        cout<<post[i]<<" ";
    cout<<post[n-1]<<endl;
    return 0;
}

