올바른 괄호 문제는 백준에서 한번 풀어보았던 문제이지만,
프로그래머스로 IDE 의 힘을 빌리지 않고 코드 작성을 해보니 쉽지 않은 문제였다.
디버깅을 위해 System.out.println() 을 이용하여 디버깅 하는 방법을 잘 연습 해 놓아야 할 것 같다.
import java.util.*;
import java.io.*;
class Solution {
boolean solution(String s) {
Stack<Character> stack = new Stack<>();
boolean answer =true;
int num = s.length();
int count = 0 ;
for(int i = 0 ; i < num; i ++){
if(s.charAt(i)=='(') {
count++;
stack.add((char) s.indexOf(i));
}
else if(s.charAt(i)==')'){
count--;
if(!stack.isEmpty() && count >= 0) {
stack.pop();
} else {
answer = false;
break;
}
}
}
if(count != 0)
answer = false;
return answer;
}
}
stack
-pop
-add
String
-length
-charAt
'Algorithm & Data Structures > Programers' 카테고리의 다른 글
Lv 2. 피보나치 수 (0) | 2024.04.10 |
---|---|
Lv 2. 이진변환 반복하기 (0) | 2024.04.09 |
Lv 2. 최댓값과 최소값 (0) | 2024.03.05 |
Lv 3. 불량사용자 (Java) (0) | 2023.10.25 |
Lv2. 124 나라의 숫자 (Java) (0) | 2023.10.13 |