Codeforces Round 677 (Div. 3) |
---|
Закончено |
Есть книжная полка, на которой может уместиться $$$n$$$ книг. $$$i$$$-я позиция на книжной полке $$$a_i = 1$$$, если на этой позиции находится книга, и $$$a_i = 0$$$ иначе. Гарантируется, что есть как минимум одна книга на книжной полке.
За один ход вы можете выбрать какой-то непрерывный отрезок $$$[l; r]$$$, состоящий из книг (то есть для каждого $$$i$$$ от $$$l$$$ до $$$r$$$ должно выполняться условие $$$a_i = 1$$$), и:
Ваша задача — найти минимальное количество ходов, необходимое, чтобы собрать все книги на полке в непрерывный (последовательный) отрезок (т.е. отрезок без промежутков).
Например, в $$$a = [0, 0, 1, 0, 1]$$$ есть промежуток между книгами ($$$a_4 = 0$$$ при $$$a_3 = 1$$$ и $$$a_5 = 1$$$), в $$$a = [1, 1, 0]$$$ нет промежутков между книгами и в $$$a = [0, 0,0]$$$ тоже нет промежутков между книгами.
Вам нужно ответить на $$$t$$$ независимых наборов тестовых данных.
Первая строка теста содержит одно целое число $$$t$$$ ($$$1 \le t \le 200$$$) — количество наборов тестовых данных. Затем следуют $$$t$$$ наборов тестовых данных.
Первая строка набора тестовых данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 50$$$) — количество позиций на книжной полке. Вторая строка набора тестовых данных содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$0 \le a_i \le 1$$$), где $$$a_i$$$ равно $$$1$$$, если на этой позиции есть книга, и $$$0$$$ в противном случае. Гарантируется, что на полке есть как минимум одна книга.
Для каждого набора тестовых данных выведите одно целое число: минимальное количество ходов, необходимое, чтобы собрать все книги на полке в непрерывный (последовательный) отрезок (т.е. отрезок без промежутков).
5 7 0 0 1 0 1 0 1 3 1 0 0 5 1 1 0 0 1 6 1 0 0 0 0 1 5 1 1 0 1 1
2 0 2 4 1
В первом наборе тестовых данных примера вы можете сдвинуть отрезок $$$[3; 3]$$$ вправо, а затем отрезок $$$[4; 5]$$$ вправо. После всех ходов книги будут образовывать непрерывный отрезок $$$[5; 7]$$$. Таким образом, ответ равен $$$2$$$.
Во втором наборе тестовых данных примера вам ничего не нужно делать, так как все книги на книжной полке уже образуют непрерывный отрезок.
В третьем наборе тестовых данных примера вы можете сдвинуть отрезок $$$[5; 5]$$$ влево, затем отрезок $$$[4; 4]$$$ опять влево. После всех ходов книги будут образовывать непрерывный отрезок $$$[1; 3]$$$. Таким образом, ответ равен $$$2$$$.
В четвертом наборе тестовых данных примера вы можете сдвинуть отрезок $$$[1; 1]$$$ вправо, отрезок $$$[2; 2]$$$ вправо, отрезок $$$[6; 6]$$$ влево и, наконец, отрезок $$$[5; 5]$$$ влево. После всех ходов книги будут образовывать непрерывный отрезок $$$[3; 4]$$$. Таким образом, ответ равен $$$4$$$.
В пятом наборе тестовых данных примера вы можете сдвинуть отрезок $$$[1; 2]$$$ вправо. После всех ходов книги будут образовывать непрерывный отрезок $$$[2; 5]$$$. Таким образом, ответ равен $$$1$$$.
Название |
---|