

여러 풀이법이 있을것 같은데, 나는 스택으로 풀었다. 순서를 뒤바꾸면 쉽다 -> 후입선출의 스택. 이란 느낌으로 발상.
import java.util.Stack;
class Solution {
public int solution(String s) {
int answer = 0;
String[] arr = s.split(" ");
int l = arr.length;
Stack<Integer> stack = new Stack<>(); // 숫자를 받을 스택.
for (int i=0; i<l; i++) {
if (arr[i].equals("Z")) {
answer-=stack.pop();
} else {
stack.push(Integer.parseInt(arr[i]));
answer+=stack.peek();
}
}
return answer;
}
}'프로그래머스 문제풀이 > Level 0' 카테고리의 다른 글
| 이진수 더하기 (자바, Java) (0) | 2022.12.02 |
|---|---|
| 문자열 계산하기 (자바, Java) (0) | 2022.12.02 |
| 소인수분해 (자바, Java) (0) | 2022.12.01 |
| 가까운 수 (자바, Java) (0) | 2022.11.27 |
| 옹알이(1) (자바, Java) (0) | 2022.11.27 |