• 문제 링크
5957번: Cleaning the Dishes
Bessie and Canmuu are teaming up to wash the massive pile of N (1 <= N <= 10,000) dirty dishes left over after the CowMoose Festival. Bessie is washing the dishes; Canmuu will dry them. Each dish has a unique serial number in the range 1..N. At the beginni
www.acmicpc.net
• 풀이 과정
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Stack;
import java.util.StringTokenizer;
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));
int n = Integer.parseInt(br.readLine());
Stack<Integer> unwashed = new Stack<>();
Stack<Integer> washed = new Stack<>();
Stack<Integer> dried = new Stack<>();
for (int i = n; i >= 1; i--)
unwashed.push(i);
while (dried.size() != n) {
StringTokenizer st = new StringTokenizer(br.readLine());
String c = st.nextToken();
int d = Integer.parseInt(st.nextToken());
if (c.equals("1")) while (d-- > 0) washed.push(unwashed.pop());
else while (d-- > 0) dried.push(washed.pop());
}
StringBuilder sb = new StringBuilder();
while (!dried.empty()) sb.append(dried.pop()).append("\n");
bw.write(sb.toString());
bw.flush();
}
}
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 15233 Final Score - Data Structure / Java (0) | 2023.06.28 |
---|---|
[백준] 13915 Hot Air Ballooning - Data Structure / Java (0) | 2023.06.27 |
[백준] 4921 나무 블록 - Data Structure / Java (0) | 2023.06.25 |
[백준] 27497 알파벳 블록 - Data Structure / Java (0) | 2023.06.24 |
[백준] 3018 캠프파이어 - Data Structure / Java (0) | 2023.06.23 |
댓글