#252. [R41C]文本编辑器

[R41C]文本编辑器

时空限制

1S/512M

题目描述

apiadu 正在使用一个功能紊乱的键盘输入文字。给定一个字符串 SS,表示 apiadu 依次按下的按键。字符串 SS 中仅包含小写字母、#@

键盘的初始状态为小写模式。按键的具体功能如下:

  1. 小写字母:
    • 如果当前键盘处于小写模式,则在屏幕上输入该字母的小写形式。
    • 如果当前键盘处于大写模式,则在屏幕上输入该字母对应的大写形式。
  2. @
    • 切换键盘的大小写模式(即从小写切换到大写,或从大写切换到小写)。注意:此按键本身不会在屏幕上显示任何字符。
  3. #
    • 删除屏幕上显示的最后一个字符。如果屏幕为空,则不进行任何操作。
    • 特别注意:# 仅具备删除字符的功能,不会改变键盘的大小写模式状态。

请你输出 apiadu 完成所有按键操作后,屏幕上最终显示的字符串。

格式

输入格式

第一行包含一个整数 nn,表示字符串 SS 的长度。

第二行包含一个字符串 SS,表示按键序列。

输出格式

输出一行一个字符串,表示屏幕上最终显示的内容。

样例

样例输入 #1

11
abc@d##ef@g

样例输出 #1

abEFg

样例解释 #1

按键过程如下:

  1. abc: 输入 abc,屏幕内容 abc,模式:小写。
  2. @: 切换模式,模式:大写。
  3. d: 输入 D,屏幕内容 abcD,模式:大写。
  4. #: 删除 D,屏幕内容 abc,模式:大写(保持不变)。
  5. #: 删除 c,屏幕内容 ab,模式:大写。
  6. e: 输入 E,屏幕内容 abE,模式:大写。
  7. f: 输入 F,屏幕内容 abEF,模式:大写。
  8. @: 切换模式,模式:小写。
  9. g: 输入 g,屏幕内容 abEFg,模式:小写。

最终结果为 abEFg

数据规模

对于 100%100\% 的数据,1S5×1051 \le |S| \le 5 \times 10^5。字符串 SS 中仅包含小写字母、#@