문제 풀이 및 개발 공간

[백준] 17952번 과제는 끝나지 않아! (silver 3 본문

백준공부/java

[백준] 17952번 과제는 끝나지 않아! (silver 3

gomduri43 2023. 9. 7. 22:37

import java.io.*;
import java.util.*;

class Point{
    int x;
    int time;
    public Point(int x, int time){
        this.x=x;
        this.time=time;
    }

}
public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
        Stack<Point> stk=new Stack<>();
        int n=Integer.parseInt(br.readLine());
        int answer=0;
        StringTokenizer st;
        for(int i=0; i<n; i++){
            st=new StringTokenizer(br.readLine());
            int a=Integer.parseInt(st.nextToken());
            if(a==0){
                if(stk.size()==0){
                    continue;
                }
                Point temp=stk.pop();
                stk.push(new Point(temp.x , temp.time-1));
                if(stk.peek().time==0){
                    answer+=stk.pop().x;
                }
            }
            else{
                stk.push(new Point(Integer.parseInt(st.nextToken()),Integer.parseInt(st.nextToken())-1));
                if(stk.peek().time==0){
                    answer+=stk.pop().x;
                }
            }
        }
        bw.write(answer+"");
        bw.flush();
    }
}