#aBC250E. [ABC250E] Prefix Equality

[ABC250E] Prefix Equality

AT_abc250_e [ABC250E] Prefix Equality

题目描述

给定两个长度为 NN 的整数序列 A=(a1,,aN)A = (a_1, \ldots, a_N)B=(b1,,bN)B = (b_1, \ldots, b_N)

对于 i=1,,Qi = 1, \ldots, Q,请回答以下形式的查询:

  • 如果 AA 的前 xix_i(a1,,axi)(a_1, \ldots, a_{x_i}) 所包含的值的集合与 BB 的前 yiy_i(b1,,byi)(b_1, \ldots, b_{y_i}) 所包含的值的集合相等,则输出 Yes,否则输出 No

输入格式

输入以如下格式从标准输入读入。

NN
a1 a2  aNa_1\ a_2\ \ldots\ a_N
b1 b2  bNb_1\ b_2\ \ldots\ b_N
QQ
x1 y1x_1\ y_1
\vdots
xQ yQx_Q\ y_Q

输出格式

输出 QQ 行。第 ii 行输出第 ii 个查询的答案。

输入输出样例 #1

输入 #1

5
1 2 3 4 5
1 2 2 4 3
7
1 1
2 2
2 3
3 3
4 4
4 5
5 5

输出 #1

Yes
Yes
Yes
No
No
Yes
No

说明/提示

约束条件

  • 1N,Q2×1051 \leq N, Q \leq 2 \times 10^5
  • 1ai,bi1091 \leq a_i, b_i \leq 10^9
  • 1xi,yiN1 \leq x_i, y_i \leq N
  • 所有输入均为整数。

样例解释 1

请注意,集合只关注每个值是否出现过。在第 33 个查询中,AA 的前 22 项包含 112211 个,BB 的前 33 项包含 1111 个,2222 个。但它们所包含的值的集合都是 {1,2}\{1,2\},因此集合相等。另外,在第 66 个查询中,虽然每个值出现的顺序不同,但作为集合它们依然相等。

由 ChatGPT 4.1 翻译