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


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

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 a,b;
	if(l >= r) return;
	a = pre[d++];
	b = find(a);
	rec(l,b);
	rec(b+1,r);
	post[c++] = a;
}



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

