Codeforces Global Round 23 |
---|
Закончено |
У вас есть массив $$$a$$$ размера $$$n$$$, состоящий только из нулей и единиц, и целое число $$$k$$$. За одну операцию вы можете выполнить одно из двух следующих действий:
Определите, возможно ли превратить $$$a$$$ в $$$[1]$$$ после нескольких (возможно, нуля) операций.
Каждый тест содержит несколько наборов входных данных. Первая строка содержит количество наборов входных данных $$$t$$$ ($$$1 \le t \le 1000$$$). Далее следует их описание.
Первая строка каждого набора входных данных содержит два целых числа $$$n$$$ и $$$k$$$ ($$$2 \le k \le n \le 50$$$) — размер массива $$$a$$$ и длину отрезка, на котором можно выполнить операцию второго типа.
Вторая строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$a_{1}, a_{2}, \ldots, a_{n}$$$ ($$$a_i$$$ равно $$$0$$$ или $$$1$$$) — элементы массива $$$a$$$.
Для каждого набора входных данных, если возможно превратить $$$a$$$ в $$$[1]$$$, выведите «YES», иначе выведите «NO».
73 20 1 05 31 0 1 1 02 21 14 40 0 0 06 30 0 1 0 0 17 51 1 1 1 1 1 15 30 0 1 0 0
YES YES YES NO YES YES YES
В первом наборе входных данных вы можете выполнить операцию второго типа над вторым и третьим элементами так, что $$$a$$$ будет равно $$$[0, 1]$$$, затем вы можете выполнить операцию второго типа над первым и вторым элементами, после чего $$$a$$$ превратится в $$$[1]$$$.
Очевидно, что в четвертом наборе входных данных вы не можете получить ни одного значения $$$1$$$, что бы вы ни делали.
В пятом наборе входных данных вы можете сначала выполнить операцию второго типа над первыми тремя элементами, чтобы $$$a$$$ стало равно $$$[1, 0, 0, 1]$$$, затем выполнить операцию второго типа над элементами со второй позиции по четвертую так, что $$$a$$$ станет равно $$$[1, 1]$$$, и, наконец, выполнить операцию первого типа над оставшимися элементами так, что $$$a$$$ превратится в $$$[1]$$$.
Название |
---|