かっこの変換(Python)
5022 ワード
質問する
かっこの変換
問題の説明
所定の要求に従って実施される問題.
文字列を2つの文字列に分離し、この2つの文字列を分離するため、再帰形式として実現される.
균형잡힌 문자열
と올바른 문자열
を正しく理解する場合、균형잡힌 문자열
は)
で始まるべきであるが、数は正しくなければならない.u
は再分離できない平衡文字列であり、(
と)
の数が正しい場合、直ちに終了しなければならない.上記の
올바른 문자열
がu
で始まる場合、(
は正しい文字列でなければならない.u
は、分離不可能なバランス文字列の前提となっているからである.プールコード
# 두 균형잡힌 괄호 문자열로 분리
def divide(string):
if string == "":
return ""
answer = ""
top = 0
u = v = ""
for i in range(len(string)):
top = top + 1 if string[i] == "(" else top - 1
u += string[i]
if top == 0:
v = string[i + 1 :]
break
# 만약 u가 올바른 괄호 문자열이라면
if u[0] == "(":
answer += u + divide(v)
else:
answer += "(" + divide(v) + ")"
for s in u[1:-1]:
answer += "(" if s == ")" else ")"
return answer
def solution(p):
answer = ""
answer += divide(p)
return answer
Reference
この問題について(かっこの変換(Python)), 我々は、より多くの情報をここで見つけました https://velog.io/@qweadzs/프로그래머스-괄호-변환Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol