728x90
https://programmers.co.kr/learn/courses/30/lessons/42585
코딩테스트 연습 - 쇠막대기
여러 개의 쇠막대기를 레이저로 절단하려고 합니다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자릅니다. 쇠막대기와 레�
programmers.co.kr
import java.util.Stack;
class Solution {
public static int solution(String arrangement) {
int answer = 0;
Stack<Character> stack = new Stack<>();
for (int i = 0; i < arrangement.length(); i++) {
if (arrangement.charAt(i) == '(')
stack.add(arrangement.charAt(i));
else {
stack.pop();
if (arrangement.charAt(i - 1) == '(')
answer += stack.size();
else
answer++;
}
}
return answer;
}
}
문제 난이도는 높지 않은데, 헤맸다.
심지어 대학교 졸업하고 풀어봤던 문제인데...
728x90