#D. 「ROIR 2023 Day2」字符串问题

    Type: Default 2000ms 512MiB

「ROIR 2023 Day2」字符串问题

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

我们称两个字符串 sstt 是等价的,如果对于任意长度为 22 的字符串 uuuuss 中出现的次数与在 tt 中出现的次数相同。例如,字符串 aaabaabaaabaaab 彼此等价(aa 出现两次,ab 出现一次,ba 出现一次,bb 不出现),而字符串 abbbba 则不等价。

在这个问题中,给定 QQ 个由字符 abc 组成的字符串,对于每个字符串,需要计算有多少个与其等价的非空字符串,这些字符串也由 abc 组成。由于这个数量可能非常大,需要输出其对 109+710^{9}+7 取模的结果。

输入格式

第一行输入一个整数 GG,表示当前测试点所属的子任务编号。对于样例,G=0G=0

第二行输入一个整数 qq (1q105)(1 \leq q \leq 10^5),接下来是 qq 行,每行是一个由字符 abc 组成的字符串。这些字符串的总长度不超过 10610^6

输出格式

输出 qq 个整数,对于每个字符串,输出与其等价的字符串数量对 109+710^{9}+7 取模的结果。

0
4
abaa
abca
ccbca
bacc
3
3
2
1

字符串 abaa 等价的字符串有 abaaaababaab
字符串 abca 等价的字符串有 abcabcabcabc
字符串 ccbca 等价的字符串有 ccbcacbcca
字符串 bacc 仅等价于 bacc

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制 子任务依赖
11 1111 字符串 ss 不包含字符 c
22 1313 字符串 ssac 不相邻 11
33 1111 ni13n_{i} \leq 13
44 1010 L40L \leq 40 33
55 99 L60L \leq 60 3,43,4
66 1313 w100;L105w \leq 100 ; L \leq 10^5
77 3333 无附加限制 161\sim 6

nin_i 表示第 ii 个输入字符串的长度,LL 表示所有字符串的长度之和,ww 表示所有查询中最大(未取模)的答案。

NOIP模拟赛

Not Attended
Status
Done
Rule
OI
Problem
4
Start at
2024-10-25 8:00
End at
2024-10-25 12:00
Duration
4 hour(s)
Host
Partic.
48