E. Упорядочивание овец
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вы играете в игру «Упорядочивание овец». Цель этой игры — сделать так, чтобы овцы выстроились в ряд. Уровень в игре описывается строкой длины $$$n$$$, состоящей из символов '.' (пустое пространство) и '*' (овечка). За один ход вы можете передвинуть любую овечку на одну клетку влево или на одну клетку вправо, если соответствующая клетка существует и пуста. Игра заканчивается, как только овцы выстроились в ряд, то есть между любыми овечками не должно быть пустых клеток.

Например, если $$$n=6$$$ и уровень описывается строкой «**.*..», тогда возможен следующий сценарий игры:

  • овечка на позиции $$$4$$$ двигается вправо, состояние уровня: «**..*.»;
  • овечка на позиции $$$2$$$ двигается вправо, состояние уровня: «*.*.*.»;
  • овечка на позиции $$$1$$$ двигается вправо, состояние уровня: «.**.*.»;
  • овечка на позиции $$$3$$$ двигается вправо, состояние уровня: «.*.**.»;
  • овечка на позиции $$$2$$$ двигается вправо, состояние уровня: «..***.»;
  • овцы выстроились в ряд, игра завершается.

Для заданного уровня определите минимальное количество ходов, которое нужно сделать, чтобы пройти уровень.

Входные данные

В первой строке содержится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$). Далее следую $$$t$$$ наборов входных данных.

В первой строке каждого набора входных данных содержится одно целое число $$$n$$$ ($$$1 \le n \le 10^6$$$).

Во второй строке каждого набора входных данных содержится строка длины $$$n$$$, состоящая из символов '.' (пустое пространство) и '*' (овечка) — описание уровня.

Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$10^6$$$.

Выходные данные

Для каждого набора входных данных выведите одно число — минимальное количество ходов, которое нужно сделать, чтобы пройти уровень.

Пример
Входные данные
5
6
**.*..
5
*****
3
.*.
3
...
10
*.*...*.**
Выходные данные
1
0
0
0
9