알고리즘/코드
2020 KAKAO BLIND RECRUITMENT 괄호 변환 Python
MOVE🔥
2020. 11. 28. 17:21
728x90
반응형
문제에 쓰여진 설명대로 그대로 코딩했다.
def rightWord(w):
store = 0
for i in w :
if i == ')':
store -= 1
else :
store += 1
if store < 0:
return False
return True
def run(w):
# 2. U / V 분리
u = ''
v = ''
r = l = 0
for i, v in enumerate(w) :
if v == '(':
r += 1
else :
l += 1
if r == l :
u = w[:i+1]
v = w[i+1:]
break
if w == '':
return ''
# 3. 올바른 괄호 문자열 인지 check
if(rightWord(u)):
# 3-1. 올바른 괄호면 그대로 추가
return u + run(v)
else :
# 4-5.
u = u[1:len(u)-1]
u = u.replace("(","1").replace(")","(").replace("1",")")
return "(" + run(v) + ")" + u
def solution(p):
# 1. 빈문자열 check
if p == '':
return ''
return run(p)
끝
728x90
반응형