Codeforces Round 1006 (Div. 3) |
---|
Закончено |
После выполнения первого квеста Акито вышел из начальной пещеры. Через некоторое время он набрел на гоблинскую деревню.
Так как жить Акито негде, он захотел узнать цену жилья. Всем известно, что числа гоблины записывают в виде строки из символов '-' и '_', а значением, записанным строкой $$$s$$$, числа является количество различных подпоследовательностей$$$^{\text{∗}}$$$ строки $$$s$$$, равных строке «-_-» (это очень похоже на лица гоблинов).
Например, строка $$$s=$$$«-_--_-» обозначает число $$$6$$$, так как имеет $$$6$$$ подпоследовательностей «-_-»:
Сначала гоблины в ответ на вопрос Акито написали случайную строку-число $$$s$$$, но потом поняли, что хотят взять с странника как можно больше золота. Для этого они просят вас переставить символы в строке $$$s$$$ так, чтобы значение числа, записанного строкой $$$s$$$, было максимально.
$$$^{\text{∗}}$$$Подпоследовательностью строки $$$a$$$ назовем строку $$$b$$$, которую можно получить, удалив из $$$a$$$ несколько (возможно, $$$0$$$) символов. Подпоследовательности считаются различными, если для их получения были удалены различные множества индексов.
В первой строке дано число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов данных.
В первой строке каждого набора данных дано одно число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — длина строки, которую написали гоблины.
Во второй строке каждого набора данных дана строка $$$s$$$ длины $$$n$$$, состоящая только из символов '-' и '_' — строка, которую записали гоблины.
Гарантируется, что сумма $$$n$$$ по всем наборам данных не превышает $$$2 \cdot 10^5$$$.
Для каждого набора данных требуется вывести одно число — максимальное количество подпоследовательностей, равных строке «-_-», если оптимально переставить символы в строке $$$s$$$.
83--_5__-__9--__-_---4_--_10_-_-_-_-_-7_------1-2_-
1 0 27 2 30 9 0 0
В первом наборе данных выгодно переставить символы так, чтобы получилась строка «-_-». Это единственная строка из трех символов, которая имеет хотя бы одну подпоследовательность «-_-».
Во втором наборе данных есть только один символ «-», а для подпоследовательности «-_-» нужно хотя бы два. Это значит, что для любой перестановки символов ответ будет $$$0$$$.
В седьмом и восьмом наборах длина строки $$$n < 3$$$, а значит, подпоследовательностей длины $$$3$$$ не существует.
Название |
---|