子串的定义:一个字符串删除任意长度(可以为0)的前缀、后缀之后剩下的字符串。空串是任意字符串的子串。
显然会有很多方式进行选择,魔女宁宁想知道,最后盒子上的数字序列,字典序最小的是哪一种?
形式化的,你需要使得数列 $$$b_1,b_2,b_3...b_k$$$ 字典序最小。注意 $$$b_i \ge 0$$$,也就是说,盒子里可以是空的
例如:
存在四个盒子:$$$ababc$$$ ,$$$ggoppo$$$,$$$fft$$$, $$$wwwwk$$$ 。
糖果串为:$$$baboppowk$$$。
走到第一个盒子时,取出 $$$bab$$$,此时 $$$S$$$ 剩余 $$$oppowk$$$;
走到第二个盒子时,取出$$$oppo$$$,此时 $$$S$$$ 剩余 $$$wk$$$;
第三个时,只能取出空串,此时 $$$S$$$ 剩余 $$$wk$$$;
第四个时,取出 $$$wk$$$,恰好取完,此时 $$$S$$$ 为空;
那么可以将糖果串分为 : $$$bab-oppo-$$$空$$$-wk$$$ 三段(四份)。显然他们是对应四个盒子的子串。
最后的盒子上标上的数字为: $$$3,4,0,2$$$
第一行一个数字 $$$T$$$ ,表示测试组数。
每一个测试组由以下输入组成:
保证字符串只存在小写字母,输入的总字符串长度 $$$ \le 2 \times 10 ^ 6$$$
输出 $$$T$$$ 行,每行 $$$k$$$ 个非负整数 $$$b_1,b_2,b_3,\ldots ,b_k$$$ ,用空格隔开,行尾没有多余空格。
你需要保证数列$$$b_1,b_2,b_3,\ldots ,b_k$$$字典序最小。数据保证每个测试组都有解。
5 3 19 iamdata juststructure notstring datastructurestring 3 8 iiiiii llove yesxtu ilovextu 3 3 not aurora st nst 3 15 kids mother people kidmotherpeople 3 6 bbbb bbbccc dddd bbbcdd
4 9 6 1 4 3 1 0 2 3 6 6 0 4 2