Вам дана строка $$$s$$$, каждый символ которой — 1, 2 или 3. Вы должны выбрать кратчайшую непрерывную подстроку $$$s$$$, в которой каждый из трех символов встречается хотя бы один раз.
Непрерывная подстрока $$$s$$$ — строка, которую можно получить из $$$s$$$ удалением какого-то количества (возможно, ни одного) символов из начала строки $$$s$$$ и какого-то количества (возможно, ни одного) символов из конца строки $$$s$$$.
В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 20000$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из одной строки $$$s$$$ ($$$1 \le |s| \le 200000$$$). Гарантируется, что каждый символ $$$s$$$ — 1, 2 или 3.
Сумма длин всех строк не превосходит $$$200000$$$.
Для каждого набора тестовых данных выведите одно число — длину кратчайшей подстроки $$$s$$$, содержащей символы всех трех типов. Если такой подстроки нет, выведите $$$0$$$.
7 123 12222133333332 112233 332211 12121212 333333 31121
3 3 4 4 0 0 4
Рассмотрим пример из условия:
В первом наборе входных данных можно использовать подстроку 123.
Во втором наборе входных данных можно использовать подстроку 213.
В третьем наборе входных данных можно использовать подстроку 1223.
В четвертом наборе входных данных можно использовать подстроку 3221.
В пятом наборе входных данных в $$$s$$$ нету символа 3.
В шестом наборе входных данных в $$$s$$$ нету символа 1.
В седьмом наборе входных данных можно использовать подстроку 3112.
Название |
---|