반응형
5430번: AC
각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.
www.acmicpc.net
코드
n = (int)(input())
for i in range(n):
funcstr = input()
list_n = (int)(input())
de = (str)(input())[1:-1].split(',')
funcstr = funcstr.replace('RR','')
if list_n == 0:
de = []
r_flag = 0
flag = 1
for j in range(len(funcstr)):
if funcstr[j] == 'R':
r_flag = not r_flag
else:
if len(de) == 0:
print("error")
flag = 0
break
if r_flag:
de.pop(len(de)-1)
else:
de.pop(0)
if flag == 1:
if r_flag:
de.reverse()
print('[', end='')
print(','.join(de), end='')
print(']')
1. 양 옆의 '['와 ']'를 인덱싱으로 제거하고, 콤마를 기준으로 split()
de = (str)(input())[1:-1].split(',')
2. 'RR'이면 다시 원상태이기 때문에 replace() 함수로 없애주었다.
funcstr = funcstr.replace('RR','')
3. 줄바꿈없이 print
print('[', end='')
4. 중간중간 콤마를 넣어 join
print(','.join(de), end='')
반응형
'Programming > Coding Test' 카테고리의 다른 글
백준 9184 - 메모이제이션을 이용한 DP 문제 (0) | 2021.01.14 |
---|---|
백준 4949 - deque를 이용해서 스택 문제풀기 (0) | 2021.01.12 |
백준 1021 - deque를 이용해서 풀어보았습니다 (0) | 2021.01.12 |
백준 1002 - 원의 성질을 이용한 문제 (0) | 2021.01.12 |
백준 4153 - 피타고라스를 이용한 단순 수학 문제 (0) | 2021.01.11 |