305672: CF1073B. Vasya and Books

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Vasya and Books

题意翻译

# codeforces 1073B div2 2018.10.25 ## 题目大意: 给定 $n$ 本书,序号分别为$1$到$n$,现在执行$n$个操作, 第$i$个操作需要从栈内取出编号为$b_i$的书,如果该书已经取出,则输出```0```否则将该书从栈内取出,同时取出在栈内比$b_i$靠上的书,并且输出一共取出了几本书

题目描述

Vasya has got $ n $ books, numbered from $ 1 $ to $ n $ , arranged in a stack. The topmost book has number $ a_1 $ , the next one — $ a_2 $ , and so on. The book at the bottom of the stack has number $ a_n $ . 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 $ b_i $ into his backpack. If the book with number $ b_i $ is in the stack, he takes this book and all the books above the book $ b_i $ , 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 $ b_1, b_2, \dots, b_n $ are distinct. Help Vasya! Tell him the number of books he will put into his backpack during each step.

输入输出格式

输入格式


The first line contains one integer $ n~(1 \le n \le 2 \cdot 10^5) $ — the number of books in the stack. The second line contains $ n $ integers $ a_1, a_2, \dots, a_n~(1 \le a_i \le n) $ denoting the stack of books. The third line contains $ n $ integers $ b_1, b_2, \dots, b_n~(1 \le b_i \le n) $ denoting the steps Vasya is going to perform. All numbers $ a_1 \dots a_n $ are distinct, the same goes for $ b_1 \dots b_n $ .

输出格式


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.

输入输出样例

输入样例 #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.

Input

题意翻译

### 题目描述 Vasya 有 $n$ 本书,编号从 $1$ 到 $n$,放在一个栈中,最上面的书的编号为 $a_{1}$,下一本书为 $a_{2}$,以此类推,栈底部的书编号为 $a_{n}$,所有书的数字都是不同的。 Vasya 想在 $n$ 次操作下,把所有书都移动到他的背包里,在第 $i$ 次操作中他想移动编号为 $b_{i}$ 的书到他的包里,如果这本书还在栈中,他将取走 $b_{i}$ 和 $b_{i}$ 以上的所有书,并且将它们都放到包里,否则他什么都不需要做,并且开始取下一本书。 请你帮助 Vasya,告诉他每一步他要取走几本书。 翻译提供:@Maysoul ### 输入格式 第一行只有一个整数 $n$,代表栈中书的数量。 第二行有 $n$ 个整数 $a_{1}, a_{2}, \ldots, a_{n}$ 表示栈中书的编号。 第三行有 $n$ 个整数 $b_{1}, b_2, \ldots, b_{n}$ 表示 Vasya 将要取走的书。 保证 $a_{1\sim n}$ 互不相同,$b_{1\sim n}$ 互不相同。 ### 输出格式 输出 $n$ 个整数,代表在第 $i$ 步 Vasya 需要移动的书的数目,如不需移动则输出 $0$。 ### 数据范围 $1\le n \le 2\times 10^{5}$。 $1\le a_{i}, b_i \le n $。 $1\le b_{i} \le n $。 ### 说明/提示 在样例 $2$ 中,第一步 Vasya 取走了编号为 $4$ 及以上的三本书,在那之后,只有编号为 $2$ 和 $5$ 的书还在栈中,并且 $2$ 在 $5$ 上面,在下一步 Vasya 取走了编号为 $5$ 及以上的两本书,在之后的操作中,没有书可以再被移动了。

加入题单

上一题 下一题 算法标签: