728x90
https://school.programmers.co.kr/learn/courses/30/lessons/60058
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제도 잘 이해가 안됐고
어떻게 구현할지 감도 잘안왔다...😓
이번에 풀고 익혀야지!!
코드 :
# u,v로 나누기
def divide(p) :
open_p = 0
close_p = 0
for i in range(len(p)) :
if p[i] == '(' : open_p+=1
else : close_p +=1
# 같아지는 순간
# u는 균형잡힌 괄호 문자열
if open_p == close_p :
return p[:i+1], p[i+1:]
# 해당 문자열이 올바른 괄호 문자열인지 확인
def check(u) :
stack = []
for p in u :
if p =='(' :
stack.append(p)
else :
if not stack :
return False
stack.pop()
return True
def solution(p):
answer = ''
if not p :return ""
u,v = divide(p)
# u가 올바른 경우
if check(u) :
# 재귀
return u + solution(v)
else :
answer = '('
answer += solution(v)
answer += ')'
for p in u[1:len(u)-1] :
if p =='(' :
answer += ')'
else : answer += '('
return answer
정말....그냥 문제대로 구현하면 되는 문제다.
문제 구현하는 걸 두려워하지 말고 자신감있게 구현해보자
참고 풀이 :
https://jokerldg.github.io/algorithm/2021/05/22/parentheses-change.html
프로그래머스 괄호 변환 (python 파이썬) - Tech
프로그래머스 괄호 변환 (python 파이썬) May 22, 2021
jokerldg.github.io
반응형
'알고리즘 > 프로그래머스문제풀이' 카테고리의 다른 글
[Python/프로그래머스]합승택시요금_플로이드와샬 (0) | 2022.10.15 |
---|---|
[Python/프로그래머스][1차]캐시_구현 (0) | 2022.10.13 |
[Python/프로그래머스]프렌즈4블록_구현 (0) | 2022.10.12 |
[Python/프로그래머스]두 큐 합 같게 만들기_[구현] (1) | 2022.10.12 |
[Python/프로그래머스]거리두기 확인하기_[BFS] (1) | 2022.10.08 |