Беси учиться кодировать на простом языке программирования. Она сначала написала
корректную программу, а затем выполнила её, получив некоторую выходную последовательность.
Определение:
- программа это непустая последовательность операторов.
- Оператор имеет форму "PRINT \(c\)" где \(c\) - целое число, или "REP \(o\)",
за которым следует программа, за которой следует "END", где \(o\) - целое
число не менее 1.
Выполнение:
- Выполнение программы исполняет операторы последовательности.
- Выполнение оператора "PRINT \(c\)" добавляет \(c\) в выходную последовательность.
- Выполнение оператора, начинающегося с "REP \(o\)" выполняет внутреннюю программу \(o\) раз
Пример программы Беси.
REP 3
PRINT 1
REP 2
PRINT 2
END
END
Эта программа выведет последовательность \([1,2,2,1,2,2,1,2,2]\).
Беси хочет вывести последовательность \(N\) (\(1 \le N \le 100\)) положительных
целых чисел. Эльза предложила Беси использовать не более \(K\) (\(1 \le K \le 3\))
операторов "PRINT". Заметим, что Беси может использовать сколько хочет операторов "REP".
Также заметим, что каждое положительное число в последовательности не более \(K\).
Для каждого \(T\) (\(1 \le T \le 100\)) независимого подтеста определите,
может ли Беси написать программу, которая выведет некоторую заданную
последовательность, используя не более \(K\) операторов "PRINT".
ФОРМАТ ВВОДА (с клавиатуры / stdin):
Первая строка содержит
\(T\).
Первая строка каждого подтеста содержит два разделённых пробелом целых
числа, \(N\) и \(K\).
Вторая строка каждого подтеста содержит последовательность из \(N\)
разделённых одиночными пробелами положительных целых чисел, не более \(K\),
представляющих последовательность, которую Беси хочет сгенерировать.
ФОРМАТ ВЫВОДА (на экран / stdout):
Для каждого подтеста выведите "YES" или "NO" (большими буквами) на отдельной строке.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
2 1 1 1 4 1 1 1 1 1
|
YES
YES
|