문제풀이/구현

[파이썬] [구현] 백준 5430 AC

승무_ 2022. 4. 28. 17:06

문제

https://www.acmicpc.net/problem/5430

 

5430번: AC

각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.

www.acmicpc.net

코드

import sys
from collections import deque
input=sys.stdin.readline

t=int(input())
for _ in range(t):
    queue=deque()
    p=input()
    n=int(input())
    array=input().strip()
    queue=deque(array[1:-1].split(','))
    p=p.replace('RR','')
    if n==0:
        queue=deque()
    flag=0
    R=0
    for i in p:
        if i=='D':
            if len(queue)==0:
                flag=1
                print("error")
                break
            if R%2==0:
                queue.popleft()
            else:
                queue.pop()
        elif i=='R':
            R+=1
    if flag==0:
        if R %2==0:
            print("[", end="")
            print(",".join(queue),end="")
            print("]")
        else:
            queue.reverse()
            print("[", end="")
            print(",".join(queue),end="")
            print("]")

생각 정리

예외 처리, 시간 초과가 까다로웠다.