#54. 炸弹序列

炸弹序列

题目描述

给定一个排列p1,p2,...,pnp_1,p_2,...,p_n, 其中有一些位置有炸弹,但至少有一个位置没有炸弹。

给定一个初始为空集的集合SS,对于ii1n1 \sim n:

1.将pip_i加入SS

2.如果ii位置有炸弹,删除SS中最大的数

集合中最大的数是这个过程中的得分。

现在有一个排列q1,q2,...,qnq_1,q_2,...,q_n, 需要对每一个前缀ii回答:如果q1,...,qi1q_1,...,q_{i-1}的位置有炸弹,qi,...,qnq_i,...,q_{n}的位置没有炸弹,进行该过程的得分是多少?

输入格式​

第一行包含一个整数n(2n3105)n(2 \le n\le 3 * 10^5)

第二行输入nn个数p1,p2,...,pnp_1,p_2,...,p_n (1pin1 \le p_i \le n)

第二行输入nn个数q1,q2,...,qnq_1,q_2,...,q_n (1qin1\le q_i \le n)

输出格式

一行nn个数代表答案

样例
样例输入 #1
6
2 3 6 1 5 4
5 2 1 4 6 3
样例输出 #1
6 5 5 5 4 1

数据范围

对于30%的数据, 1n10001\le n \le 1000

对于50%的数据, 1n50001\le n \le 5000