luogu#P9717. [EC Final 2022] Binary String
[EC Final 2022] Binary String
题目描述
You are given a binary string arranged on a cycle. Each second, you will change every to simultaneously. In other words, if and , you swap and . For example, we will change to .
You need to answer how many different strings will occur in infinite seconds, modulo .
Note: Two strings and are different if there exists an integer such that . Thus, the cyclic shifts of a string may be different from the original string.
输入格式
The first line contains an integer the number of test cases.
For each test case, the first line contains a binary string .
It is guaranteed that the sum of lengths of strings over all test cases does not exceed .
输出格式
For each test case, output one integer representing the answer in one line.
题目大意
【题目描述】
给定一个排列在环上的二进制字符串 。每一秒钟,你会同时将每个 变为 。换句话说,如果 且 ,则交换 和 。例如,我们将 变为 。
你需要回答在无限秒内会出现多少种不同的字符串,取模 。
注意:如果存在整数 使得 ,则两个字符串 和 是不同的。因此,字符串的循环移位可能与原始字符串不同。
【输入格式】
第一行包含一个整数 测试用例的数量。
对于每个测试用例,第一行包含一个二进制字符串 。
保证所有测试用例中字符串长度的总和不超过 。
【输出格式】
对于每个测试用例,输出一行一个整数,表示答案。
翻译来自于:ChatGPT
3
1
001001
0001111
1
3
9