[アルゴリズム]白駿-鉄棒
2810 ワード
白駿鉄棒
説明する
sentence = input()
count = 0
stack = []
for i in range(len(sentence)):
if sentence[i] == "(":
stack.append("(")
else:
if sentence[i-1] == "(":
stack.pop()
count += len(stack)
else:
stack.pop()
count += 1
print(count)
初めて見たとき、スタックをどのように適用すればいいか思い出せませんでした.スタック問題がスタックを直感的に使うとは思わなかった問題が多いようです.")が表示されている場合は、"("が表示される前にレーザーでカットし、""でなければ鉄棒が終了する場所です.したがって、カットする場合はスタック内の鉄棒の数を加算するだけで、鉄棒が終了する場合は数を加算するだけです.Reference
この問題について([アルゴリズム]白駿-鉄棒), 我々は、より多くの情報をここで見つけました https://velog.io/@injoon2019/알고리즘-백준-쇠막대기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol