Sanae сделала гигантского робота — Hisoutensoku, но с ним что-то не так. Что еще хуже, Sanae, кажется, не может понять, как его остановить, и она вынуждена исправлять это на лету.
Состояние робота можно представить массивом целых чисел длины \(n\). Изначально робот находится в состоянии \(a\). Она хочет превратить его в состояние \(b\).
Как отличный программист, Sanae владеет искусством копирования и вставки. За одну операцию она может выбрать некоторый отрезок из заданных отрезков, скопировать этот отрезок из \(b\) и вставить его в то же место робота, заменив исходное состояние на этих позициях. Однако она должна следить за тем, чтобы сумма \(a\) не менялась после каждой операции копирования на случай, если робот выйдет из строя. Формально Sanae может выбрать отрезок \([l,r]\) и сделать \(a_i = b_i\) (\(l\le i\le r\)), если \(\sum\limits_{i=1}^n a_i\) не изменится после применения операции.
Определите, может ли Sanae успешно перевести робота из начального состояния \(a\) в желаемое состояние \(b\) с помощью любых (возможно, ноль) операций.
Выходные данные
Для каждого теста выведите «YES» (без кавычек), если \(a\) можно превратить в \(b\), или «NO» (без кавычек) в противном случае.
Вы можете вывести «YES» и «NO» в любом регистре (например, строки «yEs», «yes» и «Yes» являются правильным ответом).
Примечание
В первом наборе входных данных один из возможных способов превратить \(a\) в \(b\):
Сначала выберите \([1,3]\). После операции \(a=[3,2,5,2,3]\).
Затем выберите \([2,5]\). После операции \(a=[3,2,5,4,1]=b\).
Во втором наборе входных данных можно показать, что невозможно превратить \(a\) в \(b\).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
2 5 2 1 5 4 2 3 3 2 5 4 1 1 3 2 5 5 2 1 5 4 2 3 3 2 4 5 1 1 2 2 4
|
YES
NO
|