#P8. 浏览器【暂无测试数据】
浏览器【暂无测试数据】
当前没有测试数据。
题目描述
在浏览器里,有“前进”和“后退”两个按钮。每当按下后退按钮后,浏览器会返回上一个界面,按下前进按钮时,浏览器会撤销前面的“后退操作”。每当直接浏览新网页或没有更多的后腿操作时,前进按钮会失效;每当后退到第一个浏览的界面时,后退按钮会失效。
现在请你编写一个程序,模拟浏览器的“前进”和“后退”功能。
输入描述
输入有多行,最后一行为close
,表示关闭。
输入中共有3种操作:
- 第一种操作为加载网页,后面有一个字符串参数,表示网址,格式为:
1 网址
- 第二种操作为后退操作,用来返回至上一个网页,没有参数,格式为:
2
- 第三种操作为前进操作,用来撤销后退操作,没有参数,格式为:
3
输出描述
输出行数比输入行数少一行,每行表示这次操作后显示的网页,如果“后退”或“前进”操作无法使用(没有更多的网页可以后退或前进),则输出error
1 https://page1.cn
1 https://page2.cn
2
3
2
2
3
3
2
1 https://page3.cn
3
2
3
2
2
close
https://page1.cn
https://page2.cn
https://page1.cn
https://page2.cn
https://page1.cn
error
https://page2.cn
error
https://page1.cn
https://page3.cn
error
https://page1.cn
https://page3.cn
https://page1.cn
error
样例解析
逐行解析:
- 输入
1 https://page1.cn
所以输出https://page1.cn
- 输入
1 https://page2.cn
所以输出https://page2.cn
- 输入
2
,上一个浏览的网页是https://page1.cn
,所以输出1 https://page1.cn
- 输入
3
,上一次被后退掉的网页是https://page2.cn
,所以输出https://page2.cn
- 输入
2
,上一个浏览的网页是https://page1.cn
,所以输出1 https://page1.cn
- 输入
2
,https://page1.cn
已经是本次浏览的第一个网页了,所以输出error
- 输入
3
,上一次被后退掉的网页是https://page2.cn
,所以输出https://page2.cn
- 输入
3
,https://page2.cn
已经是本次浏览的最后一个网页了,所以输出error
- 输入
2
,上一个浏览的网页是https://page1.cn
,所以输出1 https://page1.cn
- 输入
1 https://page3.cn
,所以输出https://page3.cn
,忽略前面后退掉的网页 - 输入
3
,刚才的1 https://page3.cn
已经忽略掉前面后退掉的网页,此时没有可以前进的网页,所以输出error
- 输入
2
,上一个浏览的网页是https://page1.cn
,所以输出1 https://page1.cn
- 输入
3
,上一次被后退掉的网页是https://page3.cn
,所以输出https://page3.cn
- 输入
2
,上一个浏览的网页是https://page1.cn
,所以输出1 https://page1.cn
- 输入
2
,https://page1.cn
已经是本次浏览的第一个网页了,所以输出error
- 输入
close
,退出程序。