문제1054--Web Navigation

1054: Web Navigation

실행시간 제한: 1 Sec  메모리사용 제한: 128 MB
제출: 550  통과: 148
[제출] [채점기록] [묻고답하기]

문제 설명

표준 웹브라우저는 방문한 페이지들 내에서 이전, 이후 페이지를 방문하는 기능이 있다. 이를 구현하는 방법으로 두 개의 스택 (foward stack, backward stack)을 이용하는 방법이 있다.

입력으로 아래의 명령들이 들어온다.

  • BACK: 현재 페이지를 forward stack에 push. backward stack에서 pop하여 현재 페이지로 설정한다. backward stack이 비어있다면 명령을 무시한다.
  • FORWARD: 현재 페이지를 backward stack에 push. forward stack에서 pop하여 현재 페이지로 설정한다. 만약 forward stack이 비었다면 명령은 무시된다.
  • VISIT : 현재 페이지를 backward stack에 push, 입력된 URL을 현재 페이지로 설정. forward stack은 비운다.
  • QUIT: 프로그램 종료 초기 웹페이지는 http://www.acm.org/로 설정되었다고 가정한다.

입력 설명

여러개의 줄에 걸쳐 웹브라우저가 수행해야 하는 명령이 입력된다.

입력되는 URL는 70글자 이하로 입력되며, Stack은 100개를 넘게 쌓이지 않는다 가정한다.

출력 설명

각 줄마다 현재 페이지를 출력한다.

만약 명령이 올바르지 않아 무시되는 경우에는 Ignored를 출력한다.

입력 예시 Copy

VISIT http://acm.ashland.edu/
VISIT http://acm.baylor.edu/acmicpc/
BACK
BACK
BACK
FORWARD
VISIT http://www.ibm.com/
BACK
BACK
FORWARD
FORWARD
FORWARD
QUIT

출력 예시 Copy

http://acm.ashland.edu/
http://acm.baylor.edu/acmicpc/
http://acm.ashland.edu/
http://www.acm.org/
Ignored
http://acm.ashland.edu/
http://www.ibm.com/
http://acm.ashland.edu/
http://www.acm.org/
http://acm.ashland.edu/
http://www.ibm.com/
Ignored

출처/분류