#abc250e. [abc250_e]Prefix Equality

[abc250_e]Prefix Equality

题目描述

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

针对每个 i=1,...,Qi=1,...,Q,按照以下格式回答查询。

  • 如果序列 AA 的前 xix_i 个元素 (a1,ldots,axi)(a_1,\\ldots,a_{x_i}) 和序列 BB 的前 yiy_i 个元素 (b1,ldots,byi)(b_1,\\ldots,b_{y_i}) 的值相等,则打印 Yes;否则,打印 No

约束条件

  • 1leqN,Qleq2times1051 \\leq N,Q \\leq 2 \\times 10^5
  • 1leqai,bileq1091 \\leq a_i,b_i \\leq 10^9
  • 1leqxi,yileqN1 \\leq x_i,y_i \\leq N
  • 输入中的所有值都是整数。

输入

从标准输入获取输入数据,格式如下:

NN a1a_1 ldots\\ldots aNa_N b1b_1 ldots\\ldots bNb_N QQ x1x_1 y1y_1 vdots\\vdots xQx_Q yQy_Q

输出

打印 QQ 行。第 ii 行应包含对第 ii 个查询的响应。

示例输入 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

注意,集合是一个概念,只关心每个值是否包含在其中。
对于第 33 个查询,AA 的前 22 个元素包含一个 11 和一个 22,而 BB 的前 33 个元素包含一个 11 和两个 22。然而,这两个片段中包含的值的集合都是 1,2\\{1,2\\},它们相等。
同样,在第 66 个查询中,这些值以不同的顺序出现,但作为集合,它们仍然相等。