CF1073B.Vasya and Books
入门
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Vasya has got n books, numbered from 1 to n, arranged in a stack. The topmost book has number a1, the next one — a2, and so on. The book at the bottom of the stack has number an. All numbers are distinct.
Vasya wants to move all the books to his backpack in n steps. During i-th step he wants to move the book number bi into his backpack. If the book with number bi is in the stack, he takes this book and all the books above the book bi, and puts them into the backpack; otherwise he does nothing and begins the next step. For example, if books are arranged in the order [1,2,3] (book 1 is the topmost), and Vasya moves the books in the order [2,1,3], then during the first step he will move two books (1 and 2), during the second step he will do nothing (since book 1 is already in the backpack), and during the third step — one book (the book number 3). Note that b1,b2,…,bn are distinct.
Help Vasya! Tell him the number of books he will put into his backpack during each step.
瓦西娅有 n 本书,编号从 1 到 n,堆叠成一摞。最上面的书编号为 a1,其下方的书编号为 a2,依此类推。位于栈底的书编号为 an。所有编号互不相同。
瓦西娅希望在 n 步内将所有书全部放入他的背包中。在第 i 步中,他希望将编号为 bi 的书放入背包。如果编号为 bi 的书仍在栈中,则他取出该书以及它上方的所有书,并将它们全部放入背包;否则他什么也不做,直接进入下一步。例如,若书的堆叠顺序为 [1,2,3](书 1 位于最上方),而瓦西娅按顺序 [2,1,3] 取书,则:第一步他会取出两本书(1 和 2);第二步他什么也不做(因为书 1 已在背包中);第三步他取出一本书(编号为 3 的书)。注意,b1,b2,…,bn 互不相同。
请帮助瓦西娅!告诉他每一步中他将放入背包的书本数量。
输入格式
The first line contains one integer n (1≤n≤2⋅105) — the number of books in the stack.
The second line contains n integers a1,a2,…,an (1≤ai≤n) denoting the stack of books.
The third line contains n integers b1,b2,…,bn (1≤bi≤n) denoting the steps Vasya is going to perform.
All numbers a1…an are distinct, the same goes for b1…bn.
第一行包含一个整数 n (1≤n≤2⋅105) —— 表示书堆中的书本数量。
第二行包含 n 个整数 a1,a2,…,an (1≤ai≤n),表示书堆的初始排列。
第三行包含 n 个整数 b1,b2,…,bn (1≤bi≤n),表示瓦西亚将要执行的操作步骤。
所有数字 a1,…,an 互不相同,b1,…,bn 同样互不相同。
输出格式
Print n integers. The i-th of them should be equal to the number of books Vasya moves to his backpack during the i-th step.
输出 n 个整数。其中第 i 个整数应等于 Vasya 在第 i 步中放入他背包的书本数量。
输入输出样例
输入#1
3 1 2 3 2 1 3
输出#1
2 0 1
输入#2
5 3 1 4 2 5 4 5 1 3 2
输出#2
3 2 0 0 0
输入#3
6 6 5 4 3 2 1 6 5 3 4 2 1
输出#3
1 1 2 0 1 1
说明/提示
The first example is described in the statement.
In the second example, during the first step Vasya will move the books [3,1,4]. After that only books 2 and 5 remain in the stack (2 is above 5). During the second step Vasya will take the books 2 and 5. After that the stack becomes empty, so during next steps Vasya won't move any books.
第一个示例已在题目描述中给出。
在第二个示例中,第一步中 Vasya 将移动书籍 [3,1,4]。之后,堆栈中仅剩下书籍 2 和 5(其中 2 位于 5 的上方)。第二步中,Vasya 将取走书籍 2 和 5。此后堆栈变为空,因此在后续步骤中 Vasya 将不再移动任何书籍。
输入解题思路,AI测评打分。不知道怎么写?