首页 > 试题广场 >

躲藏

[编程题]躲藏
XHRlyb和她的小伙伴Cwbc在玩捉迷藏游戏。
Cwbc藏在多个不区分大小写的字符串中。
好奇的XHRlyb想知道,在每个字符串中Cwbc作为子序列分别出现了多少次。
由于Cwbc可能出现的次数过多,你只需要输出每个答案对2000120420010122取模后的结果。
聪明的你在仔细阅读题目后,一定可以顺利的解决这个问题!

输入描述:
输入数据有多行,每行有一个字符串。


输出描述:
输出数据应有多行,每行表示一个答案取模后的结果。
示例1

输入

Cwbc

输出

1

说明

Cwbc作为子序列仅出现了1次。
示例2

输入

acdcecfwgwhwibjbkblcmcnco

输出

81

说明

Cwbc作为子序列出现了34=81次。

备注:
每行字符串长度不超过2×105,字符串总长度不超过106
头像 小琢卷不动
发表于 2021-11-23 16:10:28
这道题需要格外注意一句话: 不区分大小写。 所以考虑设 dpi,0/1/2/3dp_{i,0/1/2/3}dpi,0/1/2/3​ 表示以 iii 结尾,最后一位恰好匹配到 cwbc 的第 0/1/2/30/1/2/30/1/2/3 个字符的方案数。 然后稍微压一下状态,写出状态转移方程:(代码 展开全文
头像 kilomatutinal
发表于 2026-02-02 00:46:06
今天是dp喵,简单喵~想象一下,本喵在字符串里寻找“Cwbc”这四个字符组成的序列(不区分大小写哦~)。代码里用四个变量来跟踪本喵找到了多少种“半成品”序列:dp0:记录找到的 'c' 开头数量(这是第一步喵~)dp1:记录找到的 'cw' 组合数量(已经有点完整的雏形啦!)dp2:记录找到的 'c 展开全文
头像 Turgen
发表于 2026-02-02 01:26:13
经典子序列匹配数量问题力扣原题:https://leetcode.cn/problems/distinct-subsequences/ 2023年蓝桥杯C++ B组国赛第一道填空题也出过,算是经典题中的经典题了。设是当前处理的字符串中,可以构成子序列为 的前j项的方案数。 #include < 展开全文
头像 BeauWill
发表于 2026-02-02 02:10:10
#include <iostream> #include <string> #include <cassert> #include <vector> using i64 = long long; constexpr i64 P = 20001204 展开全文

问题信息

难度:
2条回答 34浏览

热门推荐

通过挑战的用户

查看代码
躲藏