摘要:
这些日子,可可不和卡卡一起玩了,原来可可正废寝忘食的想做一个简单而高效的文本编辑器。你能帮助他吗?为了明确任务目标,可可对“文本编辑器”做了一个抽象的定义:
- `Move k`:将光标移动到第 $k$ 个字符之后,如果 $k=0$ , 将光标移到文本第一个字符之前。(**注意是 cur = k 不是 cur += k**)
- `Insert n (换行) S`:在光标后插入长度为n的字符串S,光标位置不变,$n\ge 1$。
- `Delete n`:删除光标后的 $n$ 个字符,光标位置不变,$n\ge 1$。
- `Rotate n`:反转光标后的 $n$ 个字符,光标位置不变,$n\ge 1$。
- `Get`:输出光标后的一个字符,光标位置不变。
- `Prev`:光标前移一个字符。
- `Next`:光标后移一个字符。
下面是几个定义:
- 文本:由0个或多个字符构成的序列。这些字符的 ASCII 码在闭区间 [32, 126] 内,也就是说,这些字符均为可见字符或空格。
- 光标:在一段文本中用于指示位置的标记,可以位于文本的第一 阅读全文