QOJ.ac

QOJ

حد الوقت: 2 s حد الذاكرة: 1024 MB مجموع النقاط: 100 قابلة للهجوم ✓

#18675. Переворот пар монет

الإحصائيات

$N$ монет выложены в ряд. Каждая монета лежит орлом или решкой вверх.

Вы можете повторять следующую операцию любое количество раз:

  • Выбрать две соседние монеты, лежащие одной и той же стороной вверх, и перевернуть обе.

При перевороте монеты, лежащей орлом вверх, она становится решкой, а при перевороте монеты, лежащей решкой вверх, она становится орлом.

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

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

Первая строка содержит количество тестов $T$ ($1 \le T \le 10\,000$).

Первая строка каждого теста содержит количество монет $N$ ($1 \le N \le 1\,000\,000$).

Вторая строка каждого теста содержит строку $S$ длины $N$, описывающую состояние монет. Для всех $1 \le i \le N$ $i$-й символ $S$ равен H, если $i$-я монета лежит орлом вверх, и T, если решкой.

Сумма $N$ по всем тестам не превышает $1\,000\,000$.

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

Для каждого теста выведите в отдельной строке минимальное количество операций, необходимое, чтобы все монеты оказались орлом вверх. Если это невозможно, выведите $-1$.

Примеры

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

2
5
HTHHT
2
HT

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

3
-1

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.