Time Limit: 1s
Memory Limit: 128MB
정수를 저장하는 큐(Queue) 클래스를 만들어 보자. 복수의 원소를 유지한다는 점에서 스택과 큐는 유사하지만, 입력과 출력에서는 서로 다른 접근 방법을 취한다. 스택이 나중에 도착한 원소를 먼저 출력한다면, 큐는 먼저 입력된 원소를 먼저 출력한다. 여러분이 생성할 큐 클래스는 다음 내용을 포함해야 한다.
Section 10.6 gives a class for Stack. Design a class named Queue for storing integers. Like a stack, a queue holds elements. In a stack, the elements are retrieved in a last-in first-out fashion. In a queue, the elements are retrieved in a first-in first-out fashion. The class contains:
큐 클래스의 테스트를 위해서 첫째 줄에는 입력의 개수 N이 들어온다. 둘째 줄 부터는 N개의 정수가 입력으로 들어 온다. -1이 입력으로 들어올 경우 dequeue를 수행하고, 그외의 수는 큐에 enqueue 수행 한다.
* Line 1 : 명령의개수 N (1~1,000)
* Line 2 ~ N+1 : 정수형의 데이터 (-1~1,000)
큐에 남아 있는 원소를 Sample Output의 형태로 순서대로 출력한다.
import java.util.Scanner; public class Main { public static void main(String[] args) { Queue queue = new Queue(); Scanner sc = new Scanner(System.in); int N = sc.nextInt(); for (int i = 0; i < N; i++) { int n = sc.nextInt(); if (n == -1) { if (!queue.empty()) queue.dequeue(); } else { queue.enqueue(n); } } while (!queue.empty()) System.out.println(queue.dequeue()); } } YOUR_CODE
6 5 -1 -1 2 3 4
2 3 4
JAVA2015 PE10.10