230111 TIL - 백준 15828번: Router(JAVA)

won·2023년 1월 11일
0

알고리즘 문제풀이

목록 보기
4/32

TIL

큐 관련 백준 문제를 하나 더 풀었다.

백준 15828번: Router

문제 이해를 잘 못해서 살짝 고민함..
첫 입력은 큐의 크기,
두번 째 입력부턴
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();
	}
}
profile
뭐라도 하자

0개의 댓글