1. 문제 링크
2. 문제 및 입출력예제
3. 문제 풀이
입력받은 수를 stack에 push고, 0을 입력 받을 때 pop 한다.
모든 입력이 끝나면 stack에서 pop하여 모든 수를 더한 값을 출력한다.
4. 코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Stack;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
Stack<Integer> stack = new Stack<>();
int K = Integer.parseInt(br.readLine());
for(int i=0;i<K;i++) {
int num = Integer.parseInt(br.readLine());
if(num!=0) {
stack.push(num);
}
else {
stack.pop();
}
}
int result = 0;
int size = stack.size();
for(int i=0; i<size;i++) {
result+= stack.pop();
}
System.out.println(result);
}
}
'ALGORITHM' 카테고리의 다른 글
백준 20055 컨베이어 벨트 위의 로봇 (Java) (0) | 2023.04.20 |
---|---|
백준 10814 나이순 정렬 (Java) (0) | 2023.04.20 |
백준 14719 빗물 (Java) (0) | 2023.04.19 |
백준 2636, 2638 치즈 (Java) (0) | 2023.04.18 |
백준 12865 평범한 배낭 (Java) (0) | 2023.04.18 |