Вам дана строка $$$s$$$, состоящая из $$$n$$$ символов. Каждый символ — либо 0, либо 1.
Вы можете проводить операции со строкой. Каждая операция состоит из двух шагов:
Обратите внимание, что в каждой операции оба шага обязательны, и их порядок нельзя менять.
Например, если у вас есть строка $$$s =$$$ 111010, первая операция может быть одной из следующих:
Вы заканчиваете проводить операции, когда строка $$$s$$$ становится пустой. Какое максимальное количество операций вы можете провести?
В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 1000$$$) — количество наборов входных данных.
В первой строке каждого набора задано одно целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — длина строки $$$s$$$.
Во второй строке задана $$$s$$$ — строка из $$$n$$$ символов. Каждый символ — либо 0, либо 1.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
Для каждого набора входных данных, выведите одно целое число — максимальное количество операций, которые вы можете провести.
5 6 111010 1 0 1 1 2 11 6 101010
3 1 1 1 3
В первом наборе входных данных, мы можем, например, выбрать $$$i = 2$$$ и получить строку 010 после первой операции. После этого, выбрать $$$i = 3$$$ и получить строку 1. Наконец, мы можем выбрать только $$$i = 1$$$ и получить пустую строку.
Название |
---|