B3671 [语言月赛202210] 配餐

题目描述

午饭时间,喵喵喵幼儿园的 $n$ 位小朋友从左到右排成一列等待领取自己的午餐。我们将这些小朋友从左到右依次标号为 $1, 2, \cdots , n - 1, n$。 负责配餐的老师已经拿到了所有人的午饭餐食,餐食同样也是从左到右排成一排。 老师手里拿到了一份序列 $r _ 1 \cdots r _ n$,代表编号为 $i$ 的小朋友应该拿到从左向右数第 $r _ i$ 份午餐餐食($1 \leq r _ i \leq n$ 且 $r _ i$ 两两不同)。 按照上面的序列分发完成后,老师又拿到了一个序列 $a _ 1 \cdots a _ n$,其中 $a _ i$ 代表未分发前从左向右数第 $i$ 份餐食的**一个参数**。 老师想要知道,对每个小朋友,他们所拿到的午餐的**这个参数**的值是多少。但是这个任务对于老师来说太难了,所以喵喵喵幼儿园找到了万能的你。

输入格式

共三行。 第一行一个整数,代表 $n$。 第二行 $n$ 个整数,代表 $r _ 1 \cdots r _ n$。 第三行 $n$ 个整数,代表 $a _ 1 \cdots a _ n$。

输出格式

一行,$n$ 个整数。第 $i$ 个整数代表编号为 $i$ 的小朋友所拿到的午餐的**这个参数**是多少。

说明/提示

**样例解释** 编号为 $1$ 的小朋友拿到了第四份餐食,参数为 $9$。 编号为 $2$ 的小朋友拿到了第一份餐食,参数为 $7$。 编号为 $3$ 的小朋友拿到了第三份餐食,参数为 $2$。 编号为 $4$ 的小朋友拿到了第二份餐食,参数为 $4$。 **数据规模与约定** 本题共 $10$ 个测试点。 对第一个测试点,保证 $n = 2, r_1 = 1, r_2 = 2$。 对第二个测试点,保证 $n = 2$。 对第三、四个测试点,保证 $n \leq 100$。 对第五、六个测试点,保证对任意的 $1 \leq i \leq n, r _ i = i$。 对全部的测试点,保证 $2 \leq n \leq 1 \times 10 ^ 5, 1 \leq a _ i \leq 10 ^ 9, 1 \leq r _ i \leq n$ 且不存在一对 $(i, j)$ 使得 $r_i = r_j$。