알고리즘/백준
[백준 5430][파이썬] AC
2twix2
2022. 2. 12. 00:53
https://www.acmicpc.net/problem/5430
5430번: AC
각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.
www.acmicpc.net
R이 나올 때마다 뒤집으면 시간이 더 걸릴 것 같아 리스트 상태가 reverse인지 아닌지만 저장하도록 하였다.
뒤집힌 상태에서는 리스트의 가장 마지막 요소를 없애고 뒤집히지 않은 상태에서는 첫 번째 요소를 없앴다.
가장 마지막에 출력하기 직전에만 reverse 상태에 따라 뒤집을지 말지 정하도록 하였다.
import sys
input = sys.stdin.readline
N = int(input())
for i in range(N):
reverse = False
error = False
p = input().rstrip()
n = int(input())
list = input().rstrip()[1:-1].split(',')
if n == 0:
list = []
for j in range(len(p)):
if p[j] == 'R':
reverse = not reverse
else:
if len(list) == 0:
print('error')
error = True
break
else:
if reverse:
list.pop()
else:
list.pop(0)
if not error:
if reverse:
list.reverse()
print('['+','.join(list)+']')