코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.ArrayDeque;
import java.util.Deque;
class Main {
static int K;
static int answer;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
K = Integer.parseInt(br.readLine());
Deque<Integer> stack = new ArrayDeque<>();
for (int i = 0; i < K; i++) {
int num = Integer.parseInt(br.readLine());
if (!stack.isEmpty() && num == 0) {
stack.pop();
} else {
stack.push(num);
}
}
for (int n : stack) {
answer += n;
}
System.out.println(answer);
}
}
Java
복사
이건 그냥 스택 구현해서 값 더해주면 되는 엄청 쉬운 문제
하나 실수한건 나는 Deque로 스택 큐 둘다 구현하는 버릇이 있는데, add말고 push 메서드를 써야하는데 그게 좀 헷갈렸다..