#DS2S03. 验证出栈序列

验证出栈序列

验证出栈序列

题目描述

给定一个长度为 nn 的入栈序列 pushed 和一个长度为 nn 的目标出栈序列 popped。

入栈元素必须严格按照 pushed 给出的顺序进入栈,但入栈与出栈可以交替进行。

请判断是否存在一种合法操作方式,使最终的出栈顺序恰好等于 popped。

可以输出 Yes,不可以输出 No。

输入格式

第一行一个整数 nn。

第二行 nn 个互不相同的整数,表示入栈顺序。

第三行 nn 个整数,表示目标出栈顺序,保证是第二行元素的一个排列。

输出格式

输出 Yes 或 No。

数据范围

1≤n≤1000001\le n\le 100000。

样例输入

5
1 2 3 4 5
2 1 5 4 3

样例输出

Yes