#ys20250504. Binah(锁妈)

Binah(锁妈)

题目背景

直面恐惧,斩断循环。

Binah 曾是都市管理机构 “首脑” 中的调律者,名为 Garion。Ayin 为获取情报挖开她的脑子,在她死后,其外貌被用来制作研发部部长——Binah。在《脑叶公司》剧情中,随着对 Garion 经历的回忆,Binah 的核心崩溃,与主管战斗后被抑制,之后帮助 Angela 夺取光之种,最终在游戏续作《废墟图书馆》中重获新生,成为哲学层指定司书。

  • 攻击特性(篇幅限制,仅介绍第一阶段):在第一阶段,Binah 所有伤害抗性极高(0.10.1)。攻击方式有:“钥匙”,一段时间后在面前召唤指定伤害类型颜色的钥匙发射出去,对沿途员工造成约 6060 点对应伤害,并使钥匙经过的收容单元进入熔毁状态;“妖灵”,抬起手随机选择一种伤害类型,一段时间后对面前所有单位造成约 220300220\sim300 点对应伤害;“共鸣”,在整个设施范围内随机指定员工或文职人员,在他们脚下生成标记,一段时间后对标记内所有单位造成 334033\sim40 点黑伤,并使除研发部外随机 66 个收容单元进入金色熔毁(闪金狂暴),66 个收容单元进入银色熔毁(黯胧)。

题目描述

Binah 掌握着大量关于异想体的知识,这些知识被记录在一种特殊的密文里。

密文是由小写英文字母组成的字符串 SS,长度为 nn。为了更好地研究和管理异想体,Binah 有以下几种操作需求:

  • 密文替换:给定一个子串 TT,以及一个新的字符串 RR,将密文中所有与 TT 相等的子串替换为 RR。注意,替换操作是依次进行的,即替换后的字符串可能会产生新的可替换子串。

  • 密文查询:给定一个子串 QQ,查询它在经过一系列替换操作后的密文中出现的次数。

你需要编写一个程序,帮助 Binah 处理这些操作,并输出每次查询操作的结果。

输入格式

第一行是一个字符串 SS,表示初始密文。

第二行包含一个整数 qq,表示操作的总次数。

接下来 qq 行,每行表示一个操作:

  • 1 T R:表示进行一次密文替换操作。
  • 2 Q:表示进行一次密文查询操作。

输出格式

对于每个操作 22,输出一行一个整数,表示子串在当前密文中出现的次数。

输入输出样例

ababababab
3
1 ab cd
2 cd
2 ab
5
0

说明 / 提示

样例解释

  1. 初始密文为 ababababab\tt{ababababab}
  2. 将所有 ab\tt{ab} 替换为 cd\tt{cd},得到新密文 cdcdcdcdcd\tt{cdcdcdcdcd}
  3. 查询 cd\tt{cd},它在密文中出现了 55 次。
  4. 查询 ab\tt{ab},它在密文中出现了 00 次。

数据范围与约定

S,T,R,QS,T,R,Q 的长度分别为 S,T,R,Q|S|,|T|,|R|,|Q|

对于 100%100\% 的数据,$1 \le |S| \le 1000,1 \le q \le 100,1 \le |T|,|R|,|Q| \le 5$。