对于一串给定的01字符串,我们可以对其进行两个操作:
- ADD(str):在字符串的末尾加上一个字符str,str字符只能为0或者1;
- ROTATE:把前k个字符的顺序颠倒过来。如果剩下的字符串的长度小于k,则颠倒所有剩下的字符串的顺序。(注意:给定的k是不会变的,即每次ROTATE操作都只会颠倒前k个字符)
要求:给定一个01字符串和若干次ADD(str)、ROTATE操作,请你执行完所有给定的操作后,输出最后的字符串。
输入数据有若干行;
第一行有三个整数;n, m, k(0\leq n\leq 4\times 10^4;0\leq m\leq 10^5;0\leq k\leq 4\times 10^4)。分别代表给定的01字符串的长度n、给定m次操作和颠倒前k个字符。
第二行为给定的一个01字符串;
之后的m行,每一行都有一个操作。
输出数据为一行一个字符串,表示执行完所有给定的操作后的最后的字符串。
2 3 2 10 ADD(1) ROTATE ADD(0)
0110
数据规模已在题面中给出,在此处将不再重复。
时间限制 | 1 秒 |
内存限制 | 512 MB |