C. 字符串的总魅力值
字符串的总魅力值
春招模拟赛第十七场|小红📕|2023.4.23
- Status
- Done
- Rule
- IOI
- Problem
- 3
- Start at
- 2023-5-7 19:00
- End at
- 2023-5-7 20:18
- Duration
- 1.3 hour(s)
- Host
- Partic.
- 33
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.
N2解。 f1是计算子区间里面子序列的贡献
对于一个由字符 A、B、C 构成的字符串,我们定义它的“魅力值”为该字符串中包含的子序列 ABC 的数量(子序列可以不连续)。
定义一个字符串的“总魅力”为其所有连续子串的魅力值之和。
现在,考虑所有长度为 n 的、仅由字符 A、B、C 组成的字符串(共计 3n 个)。请你求出这些字符串的总魅力之和,并对 109+7 取模。
约束条件:n 为正整数,且 1≤n≤1000。
输入包含一行,一个正整数 n (1≤n≤1000)。
输出一个整数,表示所有长度为 n 的字符串的总魅力之和对 109+7 取模后的结果。
输入
1
输出
0
说明
字符串长度 n=1。所有可能的字符串为 "A"、"B"、"C",共 31=3 个。由于长度不足 3,任何字符串都无法包含子序列 "ABC",故每个字符串的魅力值为 0,总魅力之和也为 0。对 109+7 取模后结果为 0。
输入
3
输出
1
说明
字符串长度 n=3。此时每个字符串的子串只有其自身,长度为 3。计算字符串的魅力值即统计其中子序列 "ABC" 的数量。只有当字符串恰好为 "ABC" 时,魅力值为 1;其余 26 个字符串的魅力值均为 0。全部 33=27 个字符串的总魅力之和为 1。取模后仍为 1。
输入
4
输出
18
说明
字符串长度 n=4。总魅力之和由所有连续子串贡献,子串长度可为 3 或 4。设 g(k) 为所有长度为 k 的字符串魅力值之和,有 g(k)=(3k)⋅3k−3。对于长度 3 子串:每个长度为 4 的字符串有 2 个长度 3 子串,剩余 1 个位置可任意选 3 种字符,贡献为 g(3)×31×2=1×3×2=6。对于长度 4 子串:每个字符串恰好有 1 个自身,无剩余位置,g(4)=(34)⋅31=12,贡献为 12×30×1=12。合计 6+12=18,取模后为 18。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册