스택에 관한 문제. 아주 쉬움
해야할건 언제 제거를 해주느냐 만 정리해주면 됨
명심하자. 코드 짤때 내가 해야할것만 짜주면 나머지는 알아서 처리됨
import java.util.Stack;
class Solution {
public int solution(String S) {
Stack stack = new Stack();
char temp,curr;
for(int i = 0; i < S.length();i++){
curr = S.charAt(i);
if(stack.isEmpty()){
stack.push(curr);
}else{
temp = (char)stack.peek();
if(curr == '}' && temp == '{'){
stack.pop();
}else if(curr == ')' && temp == '('){
stack.pop();
}else if(curr == ']' && temp == '['){
stack.pop();
}else{
stack.push(curr);
}
}
}
if(stack.isEmpty()){
return 1;
}else{
return 0;
}
}
}