[백준/1406] 에디터 (파이썬/python)
1️⃣ 문제
문제 링크 : https://www.acmicpc.net/problem/1406
2️⃣ 코드
🔥 첫번째 시도 (시간 초과)
import sys
str = list(sys.stdin.readline().strip())
num = int(sys.stdin.readline())
cur = len(str)
for i in range(num):
com = sys.stdin.readline()
if 'L' in com:
if(cur==0):
continue
else:
cur-=1
elif 'D' in com:
if(len(str)==cur):
continue
else:
cur+=1
elif 'B' in com:
if(cur==0):
continue
else:
str.pop(cur-1)
cur-=1
elif 'P' in com:
c,m = com.split()
str.insert(cur, m)
cur+=1
for i in str:
print(i, end='')
🔥 두번째 시도
import sys
str = list(sys.stdin.readline().strip())
num = int(sys.stdin.readline())
str2 = []
for i in range(num):
com = sys.stdin.readline()
if 'L' in com:
if str:
str2.append(str.pop())
elif 'D' in com:
if str2:
str.append(str2.pop())
elif 'B' in com:
if str:
str.pop()
elif 'P' in com:
c,m = com.split()
str.append(m)
str.extend(reversed(str2))
for i in str:
print(i, end='')
댓글남기기