[Python3][2020카카오공채] 괄호 변환
2019. 10. 4. 07:47 |
프로그래밍/기타
문제 :
https://www.welcomekakao.com/learn/courses/30/lessons/60058
나의 풀이 :
def solution(p):
trans = {'(': 1, ')': -1, 1: '(', -1: ')'}
def split(s):
e = trans[s[0]]
i = 1
while e != 0 and i < len(s):
e += trans[s[i]]
i += 1
return (s[:i], s[i:])
def is_correct(s):
e = 0
for c in s:
e += trans[c]
if e < 0:
return False
return True
def make_correct(u, v):
ret = '(%s)' % recursion(v)
for c in u[1:-1]:
ret += trans[-trans[c]]
return ret
def recursion(s):
if not s:
return s
u, v = split(s)
if is_correct(u):
return u + recursion(v)
return make_correct(u, v)
return recursion(p)
'프로그래밍 > 기타' 카테고리의 다른 글
아파트 실거래가 조회 실거래닷컴 (11) | 2020.02.11 |
---|---|
[프로그래머스][Python3] 단어 변환 (1) | 2019.11.22 |
[프로그래머스][Python3] 타겟 넘버 (0) | 2019.11.11 |
[Python3][2020카카오공채] 가사 검색 (0) | 2019.10.07 |
[Python3][2020카카오공채] 문자열 압축 (0) | 2019.10.03 |
[Python] json.dumps 한글 유니코드 (0) | 2019.04.05 |
하노이의 탑 (1) | 2019.02.13 |
[Python3] 카카오 코드 페스티벌 2018 예선 - 인형들 (0) | 2019.01.18 |
최근에 달린 댓글 최근에 달린 댓글