Есть лента, разделенная на $$$n$$$ ячеек, пронумерованных слева направо от $$$1$$$ до $$$n$$$. Каждая ячейка либо содержит фишку, либо свободна.
Вы можете выполнять следующую операцию любое количество раз (возможно, ноль): выбрать фишку и переместить ее в ближайшую свободную ячейку слева. Вы можете выбрать любую фишку, при условии, что слева от нее есть хотя бы одна свободная ячейка. При перемещении фишки ячейка, где она находилась до операции, становится свободной.
Ваша цель — переместить фишки таким образом, чтобы они шли подряд, образовывали единый блок без свободных ячеек между ними. Какое минимальное количество операций вам нужно выполнить?
Первая строка содержит одно целое число $$$t$$$ ($$$1 \le t \le 1000$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из двух строк:
Дополнительное ограничение на входные данные: в каждом наборе входных данных хотя бы одна ячейка содержит фишку.
Для каждого набора входных данных выведите одно целое число — минимальное количество операций, которые вам нужно выполнить, чтобы все фишки образовали единый блок без свободных ячеек между ними.
580 1 1 1 0 1 1 060 1 0 0 0 061 1 1 1 1 151 0 1 0 190 1 1 0 0 0 1 1 0
1 0 0 2 3
В первом примере вы можете выполнить операцию с фишкой в $$$7$$$-й ячейке. Ближайшая свободная ячейка слева — $$$5$$$-я ячейка, поэтому фишка перемещается туда. После этого все фишки образуют единый блок.
Во втором примере все фишки уже находятся в одном блоке без свободных ячеек между ними. То же самое касается и третьего примера.
Название |
---|