#P16880. [GKS 2022 #C] Palindromic Deletions

    ID: 19208 远端评测题 3000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>动态规划 DP2022区间 DP期望Google Kick Start

[GKS 2022 #C] Palindromic Deletions

题目描述

最近,与单词和字符串相关的游戏非常流行。现在 Edsger 试图创建一款类似的新游戏。以下是他的初步构想。

Edsger 的新游戏名为“回文删除”。作为游戏玩家,你将获得一个长度为 NN 的字符串。然后你将执行以下过程 NN 次:

  1. 在当前字符串中均匀随机地选择一个下标。
  2. 删除该下标处的字符。你将得到一个新字符串,长度减少 11
  3. 如果新字符串是回文,你将获得一块糖果作为庆祝。

现在 Edsger 想知道:给定初始字符串,在整个游戏过程中你期望获得的糖果数量是多少?

输入格式

输入的第一行给出测试用例的数量 TT。接下来有 TT 个测试用例。每个测试用例由两行组成。

每个测试用例的第一行包含一个整数 NN,表示字符串的长度。

每个测试用例的第二行包含一个长度为 NN 的字符串 SS,由小写英文字母组成。

输出格式

对于每个测试用例,输出一行,格式为 Case #x: E,其中 xx 是测试用例编号(从 11 开始),EE 是你在游戏过程中期望获得的糖果数量。

EE 应按照以下方式对素数 109+710^9 + 7(即 10000000071000000007)取模计算。将测试用例的答案表示为最简分数 pq\frac{p}{q},则 EE 必须满足模方程 E×qp(mod109+7)E \times q \equiv p \pmod{10^9 + 7},并且 0E109+60 \le E \le 10^9 + 6。可以证明,在本问题的限制下,这样的 EE 总是存在且唯一确定。

2
2
ab
3
aba
Case #1: 2
Case #2: 333333338

提示

在第一个测试用例中,游戏有 22 种可能的过程(每一步删除的字符用下划线标出):

  1. "aba\underline{b}" \to "aa" \to ""(其中 "" 表示空字符串)。这里 "aa" 和 "" 都是回文,因此你将获得 22 块糖果。
  2. "ab\underline{a}b" \to "bb" \to ""。这里 "bb" 和 "" 都是回文,因此你将获得 22 块糖果。

因此,期望获得的糖果数为 2+22=2\frac{2+2}{2}=2

在第二个测试用例中,游戏有 66 种可能的过程(每一步删除的字符用下划线标出):

  1. "aba\underline{a}ba" \to "ba\underline{b}a" \to "a\underline{a}" \to ""
  2. "aba\underline{a}ba" \to "bab\underline{a}" \to "b\underline{b}" \to ""
  3. "abaa\underline{b}a" \to "aa\underline{a}a" \to "a\underline{a}" \to ""
  4. "abaa\underline{b}a" \to "aaa\underline{a}" \to "a\underline{a}" \to ""
  5. "abaab\underline{a}" \to "ab\underline{a}b" \to "b\underline{b}" \to ""
  6. "abaab\underline{a}" \to "aba\underline{b}" \to "a\underline{a}" \to ""

因此,期望获得的糖果数为 2+2+3+3+2+26=146=73\frac{2+2+3+3+2+2}{6} = \frac{14}{6} = \frac{7}{3}

333333338333333338 是唯一满足输出部分所述条件的数,因为 333333338×37(mod109+7)333333338 \times 3 \equiv 7 \pmod{10^9 + 7},所以 333333338333333338 是该测试用例的答案。

限制条件

1T201 \le T \le 20

字符串 SS 仅由小写英文字母组成。

测试集 1

2N82 \le N \le 8

测试集 2

2N4002 \le N \le 400

翻译由 DeepSeek V4 Pro 完成