코린이의 소소한 공부노트

[백준 온라인 저지] 10773. 제로 본문

코딩테스트 풀이/JAVA

[백준 온라인 저지] 10773. 제로

무지맘 2023. 4. 20. 11:24

1. 입력

- 첫 번째 줄에 정수 K가 주어진다. (1 K 100,000)

- 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다.

- 정수가 "0"일 경우에 지울 수 있는 수가 있음을 보장할 수 있다.

 

2. 출력

- 재민이가 최종적으로 적어 낸 수의 합을 출력한다. 최종적으로 적어낸 수의 합은 231-1보다 작거나 같은 정수이다.

 

3. 코드

import java.util.*;
import java.io.*;
class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        Stack<String> stack = new Stack<>();
        int n = Integer.valueOf(br.readLine());
        for(int i=0 ; i<n ; i++){
            String s = br.readLine();
            if(s.equals("0")) stack.pop();
            else stack.push(s);
        }
        int sum = 0;
        while(!stack.empty())
            sum += Integer.valueOf(stack.pop());
        System.out.print(sum);
    }
}