CF1511C Yet Another Card Deck
题目描述
你有一副包含 $n$ 张牌的牌堆,牌从上到下编号,最上面的牌编号为 $1$,最下面的牌编号为 $n$。每张牌都有一个颜色,第 $i$ 张牌的颜色为 $a_i$。
你需要处理 $q$ 个询问。第 $j$ 个询问由整数 $t_j$ 描述。对于每个询问,你需要:
- 找到牌堆中颜色为 $t_j$ 的最上面的一张牌,即编号最小的那张牌;
- 输出你找到的这张牌的位置;
- 将这张牌取出并放到牌堆的最上面。
输入格式
第一行包含两个整数 $n$ 和 $q$($2 \le n \le 3 \cdot 10^5$,$1 \le q \le 3 \cdot 10^5$),分别表示牌堆中的牌数和询问数。
第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($1 \le a_i \le 50$),表示每张牌的颜色。
第三行包含 $q$ 个整数 $t_1, t_2, \dots, t_q$($1 \le t_j \le 50$),表示每个询问的颜色。保证所有询问的颜色在牌堆中都存在。
输出格式
输出 $q$ 个整数,分别表示每个询问的答案。
说明/提示
样例说明:
1. 牌堆为 $[2, 1, 1, 4, \underline{3}, 3, 1]$,第一个颜色为 $t_1 = 3$ 的牌在第 $5$ 个位置;
2. 牌堆为 $[3, \underline{2}, 1, 1, 4, 3, 1]$,第一个颜色为 $t_2 = 2$ 的牌在第 $2$ 个位置;
3. 牌堆为 $[2, 3, \underline{1}, 1, 4, 3, 1]$,第一个颜色为 $t_3 = 1$ 的牌在第 $3$ 个位置;
4. 牌堆为 $[\underline{1}, 2, 3, 1, 4, 3, 1]$,第一个颜色为 $t_4 = 1$ 的牌在第 $1$ 个位置;
5. 牌堆为 $[1, 2, 3, 1, \underline{4}, 3, 1]$,第一个颜色为 $t_5 = 4$ 的牌在第 $5$ 个位置。
由 ChatGPT 4.1 翻译