Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 코딩테스트합격자되기
- react-redux
- sw expert academy
- maeil-mail
- 알고리즘
- react-router
- redux
- Get
- useDispatch
- react
- 리액트
- 매일메일
- C++
- programmers
- createSlice
- java
- axios
- 항해99
- json-server
- 항해플러스
- JavaScript
- Python
- SW
- redux-toolkit
- 이코테
- 테코테코
- 프로그래머스
- redux-saga
- Algorithm
- 자바
Archives
- Today
- Total
Binary Journey
[프로그래머스] 괄호변환 본문
반응형
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
** Python
def get_uv(p):
a = 0
for i, e in enumerate(p):
if e == "(":
a += 1
else:
a -= 1
if a == 0:
return p[:i+1], p[i+1:]
def is_u_right(u):
stack = []
for p in u:
if p == '(':
stack.append(p)
else:
if not stack:
return False
stack.pop()
return True
def solution(p):
if p == "": return p
u, v = get_uv(p)
if is_u_right(u):
return u + solution(v)
else:
# 4-1
answer = '('
# 4-2
answer += solution(v)
# 4-3
answer += ')'
# 4-4
for p in u[1:len(u)-1]:
if p == '(':
answer += ')'
else:
answer += '('
# 4-5
return answer
참고: https://jokerldg.github.io/algorithm/2021/05/22/parentheses-change.html
반응형
'프로그래머스 > level 2' 카테고리의 다른 글
[프로그래머스] 타겟 넘버 (0) | 2022.02.14 |
---|---|
[프로그래머스] 빛의 경로 사이클 (0) | 2022.02.07 |
[프로그래머스] 괄호 회전하기 (0) | 2022.01.25 |
[프로그래머스] 스킬트리 (0) | 2022.01.18 |
[프로그래머스] n^2 배열 자르기 (0) | 2022.01.17 |