Олимпиадный тренинг

Задача . A. Гирлянда


Задача

Темы: реализация *800

У вас есть гирлянда, состоящая из \(4\) цветных лампочек, цвет \(i\)-й лампочки — \(s_i\).

Изначально все лампочки выключены. Ваша задача — включить все лампочки. Вы можете выполнять следующую операцию любое количество раз: выбрать лампочку и переключить ее состояние (включить, если была выключена, и выключить, если была включена). Единственное ограничение на вышеописанную операцию — вы можете применять операцию к лампочке, только если предыдущая операция была применена к лампочке другого цвета (первую операцию можно применять к любой лампочке).

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

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

Первая строка содержит одно целое число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных.

Единственная строка каждого набора содержит \(s\) — последовательность из \(4\) символов, где каждый символ является цифрой. \(i\)-й символ этой последовательности обозначает цвет \(i\)-й лампочки.

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

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

Примечание

В первом примере все цвета различные, значит, мы можем просто включить все лампочки за \(4\) операции.

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

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


Примеры
Входные данныеВыходные данные
1 3
9546
0000
3313
4
-1
6

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя