๋ฐฑ์ค 1406๋ฒ
์ฃผ์ด์ง ์
๋ ฅ ๋ฌธ์์ด์ ์ปค์์ ์์น๋ฅผ ๋ช
๋ น์ด ๋ฐ๋ผ ์กฐ์ ํ์ฌ ๋ฌธ์์ด์ ์์ ํ๊ฑฐ๋ ์ญ์ ํ๋ค.
์ปค์๋ ์ฃผ์ด์ง ๋ฌธ์์ด์ ๊ธธ์ด m์ m+1์ ์์นํ๋ค.
ex) ๋ฌธ์์ด -> abc ์ผ๋ ์ฒ์ ์์น c๋ค๋ก ์ค์ abc| (|์ด ํ์ฌ ์ปค์์ ์์น๋ฅผ ๋ํ๋)
๋ช ๋ น ํ์ n ์ด ์ฃผ์ด์ง ๋
์
๋ ฅ ๊ฐ์ผ๋ก L์ด ๋ค์ด๊ฐ๋ฉด ์ปค์๋ฅผ ์ผ์ชฝ์ผ๋ก ์ด๋ ex) ab|c
์
๋ ฅ ๊ฐ์ผ๋ก D์ผ ๋๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ปค์ ์ด๋ ex) abc|
B๊ฐ ์
๋ ฅ ๊ฐ์ผ ๋๋ ํ์ฌ ์ปค์ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ ์ญ์ ex) ab|
P๊ฐ ์
๋ ฅ ๊ฐ์ผ ๋๋ ๋๋ฒ์งธ๋ก ๋ค์ด์จ ์
๋ ฅ ๊ฐ์ ํ์ฌ์ปค์ ๊ธฐ์ค ์ค๋ฅธ์ชฝ์ ๋ฃ์ ex) 'P s' -> abs|
import sys
input = sys.stdin.readline
left = list(input().strip())
n = int(input())
right = []
for _ in range(n):
command = input().split()
if command[0] == 'L':
if len(left) > 0:
right.append(left.pop())
# ์
๋ ฅ ๊ฐ์ ์ค๋ฅธ์ชฝ ๋ฐฐ์ด์ ๋ฃ๋๋ค ํ์ฌ ์ปค์์ ์์น๋ ์ผ์ชฝ ๋ฐฐ์ด์ ๋๋ถ๋ถ์ ๊ฐ๋ฅดํด
elif command[0] == 'D':
if len(right) > 0:
left.append(right.pop())
# ์ค๋ฅธ์ชฝ ๊ฐ์ ๋๊ฐ์ ์ผ์ชฝ์ ๋๋๋ค. (๋ง์ง๋ง์ ์ญ์ ๋ ์์๊ฐ ์ค๋ฅธ์ชฝ๋ฐฐ์ด ๋ง์ง๋ง์ ์์นํด์๊ธฐ์)
elif command[0] == 'B':
if len(left) > 0:
left.pop()
# ํ์ฌ ์ปค์์ ์์น์ ์ผ์ชฝ์ ์ญ์ ์ํด
elif command[0] == 'P':
left.append(command[1])
# ํ์ฌ ์ปค์ ๊ธฐ์ค์ผ๋ก ๊ฐ ์ถ๊ฐ
right = list(reversed(right))
# ์ค๋ฅธ์ชฝ ๋ฐฐ์ด์ ์ญ์ ๋ ์์ผ๋ก ์ ๋ ฌ๋์ด์์ด ์ญ์์ผ๋ก ๋ค์ ์ ๋ ฌํด์ค์ผํ๋ค.
print(''.join(map(str, (left + right))))