#P2105. 增强型LCP
增强型LCP
Description
给出一个长度为 的字符串 和 个操作,每个操作都是以下的任意一个 :
LCP (a, b)
: 询问当前字符串 中 和 的最长公共前缀。保证 。ADD (a, S2)
: 在当前字符串 的第 个字符前插入字符串 ,也就是将 变成 。如果 则在 的最后加上 。保证 。CHG (a, b, S2)
: 在当前字符串 种将 替换为 。保证 。DEL (a, b)
: 从当前字符串 中删去第 个字符到 第 个字符,也就是将 变成 。保证 。
保证插入的字符串长度总和、修改的字符串长度总和均不超过 ,ADD
,CHG
,DEL
的总操作数不超过 个。
Input Format
第一行是两个正整数 。
第二行是一个长度为 的字符串 。
接下来 行,每行描述一个操作,指令种类的输入格式为上述描述指令名称的第一个字符(L
对应 LCP
,A
对应 ADD
,C
对应 CHG
,D
对应 DEL
)。后续的整数和字符串的输入见题目描述。
Output Format
对于每个Lcp(a,b)操作输出最长公共前缀47
abab
L 13
A 1 ab
L 1 3
C 56 cb
L 1 3
D 1 2
L 1 3
2
4
2
0