#P1435. Rusty String
Rusty String
题目描述
多组数据,每次给一个由 V
,K
,?
三种字符构成的字符串,你需要把所有为 ?
的位置填成 V
或者 K
,你要求出所有最终构造出来的字符串里所有可行的周期,我们称 为字符串 的周期当且仅当 向右平移 位之后和原串重叠的部分完全一样,例如 VKKVK
,当 时:
VKKVK
VKKVK
它们重叠的部分都是 VK
,所以 是一个周期,同理 也是一个周期(重叠部分为空也可以)。
输入格式
第一行一个整数 ,表示数据组数。
每组数据第一行一个整数 ,第二行一个长度为 ,仅由 V
、K
、?
组成的字符串。。
保证所有字符串总长度不超过 。
输出格式
对于每组数据,先在一行输出一个数为你求得的所有可行周期的个数,接下来一行按照升序输出所有的可行周期。
3
5
V??VK
6
??????
4
?VK?
2
3 5
6
1 2 3 4 5 6
3
2 3 4