문제 번호 1367. -- 데이터구조 퀴즈 3번

1367: 데이터구조 퀴즈 3번

시간 제한: 1 Sec  메모리 제한: 128 MB
제출: 124  해결 문제 수: 88
[제출][채점 상황 열람][게시판]

문제 설명

Stack과 Queue를 이용한 문제로, 이 들의 최대 크기는 각각 20이다.

정수들이 하나씩 입력될 때마다 stack에 push하는데, 

0이 입력되면 stack에 있는 값들을 뒤집는다. (단, 0은 stack에 push하지 않는다.)

'뒤집는다'는 것은, 예를 들어 stack에 1, 2, 3 (1이 바닥, 3이 top)이 들어있다면,

뒤집은 후에는 3, 2, 1(3이 바닥, 1이 top)이 된다.

이러한 '뒤집기'는 stack에 있는 것을 모두 pop해서 queue에 저장한 후, 다시 queue에서

모두 dequeue해서 stack으로 push하면 된다. 

999가 입력되면 stack에서 숫자들을 pop하면서 한 줄에 하나씩 출력한다. (단, 999는 push되지 않는다.)

예를 들어, 

1 2 3 0 999가 입력되면 1\n 2\n 3\n 이 출력된다.

입력

1 2 3 0 999

출력

1

2

3


입력 예시

1 2 3 0 0 999

출력 예시

3
2
1

도움말

출처

[제출][채점 상황 열람]