programmers.co.kr/learn/courses/30/lessons/60058
[프로그래머스] 괄호 변환 (Level 2)
구현 / 재귀
문제를 정확히 읽고 이해하는 연습이 더 필요하다.
4-4. u의 첫 번째와 마지막 문자를 제거하고, 나머지 문자열의 괄호 방향을 뒤집어서 뒤에 붙입니다.
이 문장을 순서를 뒤집는걸로 이해해서 쓸데없이 시간을 낭비했다.
<파이썬 코드>
from collections import deque
def get_uv(p):
p = deque(p)
s,tmp = deque(),0
while not s or tmp!=0:
s.append(p.popleft())
tmp += 1 if s[-1]=='(' else -1
return ''.join(s),''.join(p)
def solution(p):
swap={'(':')',')':'('}
if p == '': return p
u,v = get_uv(p)
if u[0]=='(':
return u+solution(v)
else:
return '('+solution(v)+')'+''.join([swap[i] for i in u[1:-1]])
'PROGRAMMERS' 카테고리의 다른 글
[프로그래머스] 경주로 건설 (Level 3) (0) | 2021.05.15 |
---|---|
[프로그래머스] 순위검색 (Level 2) (0) | 2021.04.23 |
[프로그래머스] 조이스틱 (Level 2) (0) | 2021.04.23 |
[프로그래머스] 큰 수 만들기 (Level 2) (0) | 2021.04.21 |
[프로그래머스] 입국심사 (Level 3) (0) | 2021.04.20 |
댓글