2997 - 小L的字符串操作

小 L 的字符串学习的特别好,他时常喜欢去思索各种关于字符串的难题。
今天他就在思考一道难题,因为受到位运算的启发,他也想把字符串支持 << 左移, >> 右移,于是他定义一个字符串 s
左移操作就是把最左边的字符放到字符串的最右边,例如

<< abcd   

的结果为 bcda ,
执行一次右移操作是把最右边的字符放到字符串最左边,例如

>> dcab  

的结果为 bdca 。
同时,他还想支持一种字符串的翻转操作 'R' ,就是将字符串倒序排列,例如
对字符串 cbad 做R操作的结果为 dabc 。
现在,小 L 就想开始玩起来,他先想好一个初始的字符串 s ,然后制定 n 种操作的顺序。
每种操作包括:

1. << x 将字符串 s 左移 x 位。  
2. >> x 将字符串 s 右移 x 位。  
3. R 将字符串 s 进行翻转操作。  

这个对于小 L 来说有点过于困难了,他想要精通计算机的你帮助他计算出最终的字符串 s'

输入

第一行一个字符串 s ,表示初始的字符串。
第二行一个整数 n ,表示操作的数量。
接下来 n 行,每行一种对于字符串的操作。

输出

输出最终操作完得到的字符串 s' ,表示依次进行 n 次操作后得到的字符串。

样例

输入

acdeab
5
<< 2
R
>> 2
R
<< 3

输出

cdeaba

输入

abdiejk
6
R
>> 5
>> 2
<< 7
R
<< 4

输出

ejkabdi

提示

|s| 表示字符串 s 的长度。

测试点编号      特殊性质  
1~3         |s|,n,x <= 1000  
4           没有 R 操作
5           s = aaa...abb...b
6~10        无  

对于100%的数据,1 <= |s|,n <= 10^6, 0 <= x <= 10^9

来源

奇遇编程
2024年青岛市城阳区“区长杯”初中组第二题

题目参数

时间限制 1 秒
内存限制 32 MB
提交次数 3
通过人数 1
统计

上一题 下一题