Codeforces Global Round 23 |
---|
Закончено |
У вас есть массив $$$a$$$ размера $$$n$$$, состоящий только из нулей и единиц. Вы можете выполнять следующую операцию:
Обратите внимание, что элементы $$$a$$$ могут стать больше $$$1$$$ после выполнения некоторых операций. Также обратите внимание, что после операции $$$n$$$ становится на $$$1$$$ меньше.
Какое минимальное количество операций необходимо, чтобы сделать $$$a$$$ неубывающим, т. е. каждый элемент должен быть не меньше предыдущего?
Каждый тест содержит несколько наборов входных данных. Первая строка содержит количество наборов входных данных $$$t$$$ ($$$1 \le t \le 10^4$$$). Далее следует их описание.
Первая строка каждого набора входных данных содержит целое число $$$n$$$ ($$$1 \le n \le 10^5$$$), размер массива $$$a$$$.
Следующая строка содержит $$$n$$$ целых чисел $$$a_{1}, a_{2}, \ldots a_{n}$$$ ($$$a_i$$$ равно $$$0$$$ или $$$1$$$) — элементы массива $$$a$$$.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превышает $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите одно целое число — минимальное количество операций, необходимых для сортировки $$$a$$$ в неубывающем порядке.
480 0 1 1 1 1 1 151 0 0 1 121 0111 1 0 0 1 0 0 1 1 1 0
0 1 1 3
В первом наборе входных данных $$$a$$$ уже неубывающий, поэтому никаких операций выполнять не нужно, и ответ равен $$$0$$$.
Во втором наборе входных данных можно выполнить операцию для $$$i = 1$$$ и $$$j = 5$$$, тогда $$$a$$$ будет равно $$$[0, 0, 1, 2]$$$ и станет неубывающим.
В третьем наборе входных данных можно выполнить операцию для $$$i = 2$$$ и $$$j = 1$$$, так что $$$a$$$ будет равно $$$[1]$$$ и станет неубывающим.
Название |
---|