#CF1354B. 三元字符串

三元字符串

题目描述

给定一个字符串 ss,字符串中的每个字符只能是 112233 中的一个。 你需要选出 ss最短连续子串,要求这个子串至少包含这三个字符各一次

字符串 ss 的连续子串定义:可以通过从 ss 的开头删除若干个(可以是 00 个)字符、从 ss 的结尾删除若干个(可以是 00 个)字符后得到的字符串。

输入格式

第一行输入一个整数 tt1t200001 \le t \le 20000),表示测试用例的数量。

每个测试用例占一行,输入一个字符串 ss1s2000001 \le |s| \le 200000)。 题目保证字符串 ss 中的每个字符仅为 112233

所有测试用例的字符串长度总和不超过 200000200000

输出格式

对于每个测试用例,输出一个整数: 满足条件的最短连续子串的长度; 如果不存在这样的子串,输出 00

样例输入

7
123
12222133333332
112233
332211
12121212
333333
31121

样例输出

3
3
4
4
0
0
4

样例说明

  • 第一个测试用例:可选用子串 123123,长度为 33
  • 第二个测试用例:可选用子串 213213,长度为 33
  • 第三个测试用例:可选用子串 12231223,长度为 44
  • 第四个测试用例:可选用子串 32213221,长度为 44
  • 第五个测试用例:字符串中没有字符 33,无满足条件的子串。
  • 第六个测试用例:字符串中没有字符 11,无满足条件的子串。
  • 第七个测试用例:可选用子串 31123112,长度为 44