#include <stdio.h>
#include <string.h>
#define MAX 100


int n,c,d=0;
int pre[1000],in[1000],post[1000];

int find(int x);
void rec(int l,int r);

int main(void){
	int i;
	scanf("%d",&n);
	
	for(i=0;i<n;i++){
		scanf("%d",&pre[i]);
	}
	
	for(i=0;i<n;i++){
		scanf("%d",&in[i]);
	}
	
	rec(0,n);
	
	for(i=0;i<n;i++){
		if(i!=n-1){
			printf("%d ",post[i]);
		}
		else {
			printf("%d\n",post[i]);
		}
	}
	return 0;
}


int find(int x){
	int i;
	for(i=0;i<n;i++){
		if(x==in[i]){
			return i;
		}
	}
	return 0;
}

void rec(int l,int r){
	int x,y;
	if(l>=r){
		return;
	}
	
	x=pre[d++];
	y=find(x);
	rec(l,y);
	rec(y+1,r);
	post[c++]=x;
}


