https://www.acmicpc.net/problem/5430
5430번: AC각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.www.acmicpc.net
푸른건안어려웠는데 빈 배열이 주어질 경우 예외처리때문에 한참을 헤멨다.
중요한건 실제로 뒤집는게 아니라
boolean 변수 하나를 두고
뒤집는걸 실제로 뒤집는게 아니라
popleft, pop 으로 구현한다
그후 만일 뒤집힌 상태면 리스트를 거꾸로 출력만하면 된다.
import sysfrom collections import dequeinput =sys.stdin.readline
def solve(p:str,l:deque): ss=0 # 상태바 0은정상 1은 뒤집힌상태 for i in p:
if i=='R': ss^=1 #0이면 1로, 1이면 0으로 continue
else: #버리는연산일경우 if not l: #비어있으면
print('error') return else:
if ss: #뒤집힌상태면 l.pop() #뒤에서빼고
else: #아니면 l.popleft() #앞에서뺌
if ss: l.reverse() print("["+",".join(l)+"]") t=int(input())
for _ in range(t): p=input().rstrip() n=int(input())
arr=input().rstrip()[1:-1].split(',') l=deque() if not n else deque(arr)
solve(p,l)