'(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요.
-> 스택을 사용한다.
JavaScript
function solution(s){
let stack = [];
if (s[0] == ')' || s[-1] == '(') {
return false;
}
for (let i = 0; i < s.length; i++) {
if (s[i] == '(') {
stack.push(s[i]);
} else {
stack.pop();
}
}
if (stack.length == 0)
return true
return false;
}
Python
def solution(s):
stack = 0
if (s[0] == ')' or s[-1] == '('):
return False
for i in range(len(s)):
if (s[i] == '('):
stack += 1
else:
stack -= 1
if (stack < 0):
return False
if (stack == 0):
return True
return False