미소를뿌리는감자의 코딩
[백준 2024/02/06] 9012번 괄호 - python ver. 본문
728x90
https://www.acmicpc.net/problem/9012
1. 접근 방법
이번 문제는 저번에 Java로 풀었던 문제이다. 하지만, python ver. 으로 다시 풀어보았다.
확실히 저번에 풀었던 문제여서, 빠르게 처리할 수 있었다. 뭔가 성장한 기분이어서 뿌듯했다.
왼쪽 괄호가 읽히는 경우, stack에다가 넣어주었다.
만약 오른쪽 괄호가 읽힌다면 stack에서 pop을 해주었다. 해당 과정 중에서, pop을 할 왼쪽 괄호가 없다면, NO를 return 해주었다.
괄호에 대한 처리가 완료하고 난 이후에도, stack에 값이 남아있다면 짝이 지어질 오른쪽 괄호가 없는 것이기 때문에, 해당 경우에도 NO를 return 해주었다.
다시 정리해보면,
[1] ) 출력 시, stack 에서 pop
stack 이 비어있다면 -> NO
[2] ( 출력 시, stack에 넣기
---- for문 완료 후 ----
[1] stack 이 비어있지 않다면 -> NO
[2] stack 이 비어있다면 (다 짝이 지어졌다면) -> YES
2. 코드
def vps(s):
left = []
for i in s:
if i=='(':
left.append(1)
else:
if len(left)==0:
return "NO"
else:
left.pop()
#print(left)
if len(left)!=0:
return "NO"
return "YES"
n = int(input())
for i in range(n):
str = input()
print(vps(str))
728x90
'코딩 테스트 > 백준' 카테고리의 다른 글
[백준 2024/02/07] 1920번 수 찾기 - python ver. (1) | 2024.02.07 |
---|---|
[백준 2024/02/06] 1966번 프린터 큐 (0) | 2024.02.06 |
[백준 2024/02/05] 10809번 알파벳 찾기 (1) | 2024.02.05 |
[백준 2024/02/01] b1271 엄청난 부자2 (0) | 2024.02.01 |
[백준 2024/01/30] 4999번 아! (1) | 2024.01.31 |