#P1246. Orange的序列检验

Orange的序列检验

Orange的序列检验

题目描述

Orange有两个个序列,他想检验两个序列中的任意一段对应的连续子序列是否完全不同。请你帮助他实现这个程序。

我们定义两个序列完全不同,当且仅当两个序列的长度相同且对应位置的数完全不同

换句话说,Orange每次会给你两个区间 [l,r][l,r],你需要确定 i[1,rl+1]\forall i \in [1, r - l + 1], 满足 al+ibl+ia_{l+i} \ne b_{l+i}

输入格式

第一行为一个整数,表示序列长度 nn。 第二行 nn 个整数 aia_i,表示序列1。 第三行 nn 个整数 bib_i,表示序列2。 第三行为一个整数 TT,表示Orange检验的数列数量。 接下来 TT 行,每行2个整数 l,rl,r,表示一段区间。

数据范围: 1n,T1051 \le n, T \le 10^5 1ai1091 \le a_i \le 10^9 1lrn1 \le l \le r \le n

输出格式

对于每次检验,如果完全不相同,请输出YES,否则输出NO

样例 #1

样例输入 #1

3
1 2 3
3 2 1
3
1 3
1 2
1 1

样例输出 #1

NO
NO
YES

提示

对于第一次检验: 序列1对应的子序列为[1,2,3],序列2对应的子序列为[3,2,1],他们在第二个位置上有一个相同的2,因此答案为NO.