B. Массив и перестановка
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Дана перестановка $$$p$$$ длины $$$n$$$$$$^{\text{∗}}$$$ и массив $$$a$$$ длины $$$n$$$.

Назовём перестановку $$$p$$$ генерирующей для массива $$$a$$$, если массив $$$a$$$ можно получить из перестановки $$$p$$$, применив некоторое количество операций (возможно, ноль) следующего вида:

Выбрать индекс $$$i$$$ ($$$1 \le i \lt n$$$) и выполнить одну из двух замен:

  • $$$p_{i} := p_{i + 1}$$$;
  • $$$p_{i + 1} := p_{i}$$$.

Иными словами, за одну операцию можно выбрать два соседних элемента массива и скопировать значение одного из них в другой.

Вам требуется сообщить, является ли перестановка $$$p$$$ генерирующей для массива $$$a$$$.

$$$^{\text{∗}}$$$Перестановкой длины $$$n$$$ является массив, состоящий из $$$n$$$ различных целых чисел от $$$1$$$ до $$$n$$$ в произвольном порядке. Например, $$$[2,3,1,5,4]$$$ — перестановка, но $$$[1,2,2]$$$ не перестановка ($$$2$$$ встречается в массиве дважды) и $$$[1,3,4]$$$ тоже не перестановка ($$$n=3$$$, но в массиве встречается $$$4$$$).

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит одно целое число $$$n$$$ ($$$2 \le n \le 2 \cdot 10^{5}$$$) — длина массива и перестановки.

Вторая строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$p_1, p_2, \ldots, p_n$$$ ($$$1 \le p_{i} \le n$$$) — элементы перестановки.

Третья строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_{i} \le n$$$) — элементы массива.

Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^{5}$$$.

Выходные данные

Для каждого набора входных данных выведите «YES», если перестановка $$$p$$$ является генерирующей для массива $$$a$$$, иначе выведите «NO».

Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.

Пример
Входные данные
6
3
1 2 3
1 2 2
4
3 1 2 4
3 4 2 2
5
1 3 2 5 4
3 3 3 5 4
7
3 7 4 2 1 6 5
3 3 4 4 5 6 5
7
1 2 3 4 5 6 7
7 7 7 7 7 7 7
7
1 3 2 7 5 4 6
2 2 7 7 7 5 6
Выходные данные
YES
NO
YES
NO
YES
YES
Примечание

В первом наборе входных данных массив генерируется из перестановки с помощью одной операции:

  • $$$i = 2$$$ и $$$p_{i + 1} := p_{i}$$$.

Во втором наборе входных данных невозможно получить $$$a$$$ из $$$p$$$.

В третьем наборе входных данных необходимо сделать $$$2$$$ операции:

  • $$$i = 1$$$ и $$$p_{i} := p_{i + 1}$$$;
  • $$$i = 2$$$ и $$$p_{i + 1} := p_{i}$$$.