#P16518. [GKS 2015 #E] Lazy Spelling Bee

    ID: 18893 远端评测题 1000ms 1024MiB 尝试: 0 已通过: 0 显示难度普及− 上传者: 标签>数学2015排列组合Google Kick Start

[GKS 2015 #E] Lazy Spelling Bee

题目描述

在懒惰拼字比赛中,参赛者会收到一个需要拼写的目标单词 WW。如果参赛者给出的答案单词 AA 长度与目标单词相同,并且对于 AA 长度范围内的每一个 ii,AA 的第 ii 个字母要么是 WW 的第 ii 个、第 (i−1)(i-1) 个或第 (i+1)(i+1) 个字母,那么 AA 就是可接受的。(AA 的第一个字母必须匹配 WW 的第一个或第二个字母,因为 WW 的第 00 个字母不存在。类似地,AA 的最后一个字母必须匹配 WW 的最后一个或倒数第二个字母。)注意,目标单词本身始终是一个可接受的答案单词。

你正在筹办一场懒惰拼字比赛,并被要求对于每个目标单词,求出共有多少个不同的可接受答案单词。由于这个数字可能非常大,请输出其对 10000000071000000007(即 109+710^9 + 7)取模的结果。

输入格式

输入的第一行给出测试用例的数量 TT。接下来有 TT 个测试用例,每个用例占一行,包含一个仅由小写英文字母(a 到 z)组成的字符串。

输出格式

对于每个测试用例,输出一行形如 Case #x: y 的内容,其中 xx 是测试用例编号(从 11 开始),yy 是不同的可接受答案单词的数量对 109+710^9 + 7 取模的结果。

4
ag
aa
abcde
x
Case #1: 4
Case #2: 1
Case #3: 108
Case #4: 1

提示

在样例用例 #1 中,可接受的答案单词有 aa、ag、ga 和 gg。

在样例用例 #2 中,唯一可接受的答案单词是 aa。

限制

  • 1≤T≤1001 \le T \le 100。
  • 每个字符串的长度 ≥1\ge 1。

小数据集(测试集 1 - 可见)

  • 每个字符串的长度 ≤5\le 5。

大数据集(测试集 2 - 隐藏)

  • 每个字符串的长度 ≤1000\le 1000。

翻译由 DeepSeek V4 Pro 完成