큐 관련 백준 문제를 하나 더 풀었다.
문제 이해를 잘 못해서 살짝 고민함..
첫 입력은 큐의 크기,
두번 째 입력부턴
1. 양수 - add()
2. 0 - remove()
3. -1 - 입력 종료
후 큐 안의 데이터를 출력하면 되는 문제였다.
여기서 중요한 건 입력된 사이즈보다 많은 데이터가 들어오면 큐 안에 넣지말고 버릴 것!
어려운 문제는 아니였다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.LinkedList;
import java.util.Queue;
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));
Queue<Integer> queue=new LinkedList<>();
int MAX= Integer.parseInt(br.readLine());
while(true) {
int n= Integer.parseInt(br.readLine());
if(n==0){
queue.remove();
}else if(n==-1){
break;
}else{
if(queue.size()<MAX) {
queue.add(n);
}
}
}
if(queue.isEmpty()) {
bw.write("empty");
}else {
while(!queue.isEmpty()) {
bw.write(queue.poll()+" ");
}
}
bw.flush();
bw.close();
br.close();
}
}