#abc158d. [abc158_d]String Formation

[abc158_d]String Formation

题目描述

Takahashi 有一个由小写英文字母组成的字符串 SS

从这个字符串开始,按照以下过程生成一个新的字符串。

这个过程由 QQ 次操作组成。在第 ii 次操作 (1iQ)(1 \leq i \leq Q) 中,提供一个整数 TiT_i,具体含义如下:

  • 如果 Ti=1T_i = 1:反转字符串 SS

  • 如果 Ti=2T_i = 2:额外提供一个整数 FiF_i 和一个小写英文字母 CiC_i

    • 如果 Fi=1F_i = 1:将 CiC_i 添加到字符串 SS 的开头。
    • 如果 Fi=2F_i = 2:将 CiC_i 添加到字符串 SS 的末尾。

帮助 Takahashi 找到经过这个过程后得到的最终字符串。

约束条件

  • 1S1051 \leq |S| \leq 10^5
  • SS 由小写英文字母组成。
  • 1Q2×1051 \leq Q \leq 2 \times 10^5
  • Ti=1T_i = 122
  • 如果提供了,Fi=1F_i = 122
  • 如果提供了,CiC_i 是小写英文字母。

输入

输入数据从标准输入读取,以以下格式给出:

SS QQ Query1Query_1 :: QueryQQuery_Q

在第 3 到第 (Q+2)(Q+2) 行,QueryiQuery_i 是以下内容之一:

11

表示 Ti=1T_i = 1,以及:

22 FiF_i CiC_i

表示 Ti=2T_i = 2

输出

打印结果字符串。

示例输入 1

a
4
2 1 p
1
2 2 c
1

示例输出 1

cpa

将有 Q=4Q = 4 次操作。起初,SSa

  • 第 1 次操作:将 p 添加到 SS 的开头。SS 变成 pa

  • 第 2 次操作:反转 SSSS 变成 ap

  • 第 3 次操作:将 c 添加到 SS 的末尾。SS 变成 apc

  • 第 4 次操作:反转 SSSS 变成 cpa

因此,最终得到的字符串是 cpa

示例输入 2

a
6
2 2 a
2 1 b
1
2 2 c
1
1

示例输出 2

aabc

将有 Q=6Q = 6 次操作。起初,SSa

  • 第 1 次操作:SS 变成 aa

  • 第 2 次操作:SS 变成 baa

  • 第 3 次操作:SS 变成 aab

  • 第 4 次操作:SS 变成 aabc

  • 第 5 次操作:SS 变成 cbaa

  • 第 6 次操作:SS 变成 aabc

因此,最终得到的字符串是 aabc

示例输入 3

y
1
2 1 x

示例输出 3

xy