💡 생각
스택으로 "("
쌓고 ")"
나왔을 때 빼고 하면 될 거 같은데.. 시간 초과남
숫자로 "("
개수만큼 ")"
가 존재하는 지 확인"("
없이 ")"
가 나와버리면 바로 False
리턴
📖 내 코드
def solution(s):
stack = 0
for i in s:
if stack < 0:
return False
if i == "(":
stack += 1
else:
stack -= 1
return stack == 0
📑 다른 사람의 풀이
x = 0
for w in s:
if x < 0:
break
x = x+1 if w=="(" else x-1 if w==")" else x
return x==0
if문 맛깔나게 쓰는구만
'Coding Test Practice' 카테고리의 다른 글
최솟값 만들기 (0) | 2024.04.08 |
---|---|
이진 변환 반복하기 (0) | 2024.04.08 |
숫자의 표현 (0) | 2024.04.08 |
피보나치 수 (0) | 2024.04.08 |
다음 큰 숫자 (0) | 2024.04.08 |