蓝桥杯练习系统(算法训练)ALGO-952 简易编辑器

devtools/2024/10/18 12:25:50/

资源限制

内存限制:256.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s

问题描述

  你要实现一个简易文本编辑器,每个字符是一个整数,程序要完成一下操作:
  P 光标左移,如果在最左端则不动
  N 光标右移,如果在最右端则不动
  E 删除光标左侧的一个字符
  R 将光标左侧内容逆序,光标移到极左
  r 将光标右侧内容逆序,光标移到极右
  I x 插入x

样例输入

I 12
I 56
I 89
P
r
R
E

样例输出

89
56
12

数据规模和约定

  操作数少于10000

#include<iostream>
#include<list>
#include<algorithm>
using namespace std;
list<int> text;
list<int>::iterator cursor=text.begin();
int main(){int n;cin>>n;while(n--){char op;cin>>op;if(op=='P'){if(cursor!=text.begin()){cursor--;}}else if(op=='N'){if(cursor!=text.end()){cursor++;}}else if(op=='E'){if(cursor!=text.begin()){list<int>::iterator pre=--cursor;text.erase(pre);}}else if(op=='R'){reverse(text.begin(),cursor);cursor=text.begin();}else if(op=='r'){reverse(cursor,text.end());cursor=text.end();			}else if(op=='I'){int x;cin>>x;text.insert(cursor,x);//list为双向链表,插入操作将元素插入到cursor指向的位置之前,而不是之后。cursor的位置也随之变化 因此才不需要cursor++ }}for(list<int>::iterator it=text.begin();it!=text.end();it++){cout<<*it<<endl;} return 0;
}


http://www.ppmy.cn/devtools/27845.html

相关文章

1.Neo4j图数据库介绍

背景 1.社交、电商、金融、零售、物联网行业&#xff0c;现实社会组织起了一张庞大复杂的关系网。 2.传统数据库很难处理关系运算。 3.需要一种支持海量复杂数据关系运算的数据库。 图数据库是以图数据结构存储和查询数据&#xff0c;是一种NoSQL数据库&#xff0c;存储更多…

【论文阅读】互连网络的负载平衡路由算法 (GAL, Globally Adaptive Load-balancing 全局自适应负载平衡)

Globally Adaptive Load-balancing 全局自适应负载平衡 GAL: Globally Adaptive Load-balanced routing 全局自适应负载平衡路由 1. GAL on a ring2. GAL on higher dimensional torus3. 实验性能4. 算法稳定性 Stability总结 References Globally Adaptive Load-balancing 全…

搭建vue3组件库(一): Monorepo架构搭建

文章目录 1. 以 pnpm 构建 monorepo1.1 全局安装 pnpm1.2 配置 pnpm 的 monorepo 工作区1.3 仓库项目内的包相互调用1.4 TypeScript 初始化配置文件 2. 通用配置文件2.1 添加 .editorconfig 编辑器格式配置文件2.2 添加 .gitignore git 忽略文件2.3 添加 .npmrc npm配置文件2.4…

VUE2从入门到精通(一)

**************************************************************************************************************************************************************************** 1、课程概述 【1】前置储备&#xff1a;HTMLCSSJS、WebAPI、Ajax、Node.js 【2】1天&…

缓存分享(1)——Guava Cache原理及最佳实践

Guava Cache原理及最佳实践 1. Guava Cache是什么1.1 简介1.2 核心功能1.3 适用场景 2. Guava Cache的使用2.1 创建LoadingCache缓存2.2 创建CallableCache缓存 缓存的种类有很多&#xff0c;需要根据不同的应用场景来选择不同的cache&#xff0c;比如分布式缓存如redis、memca…

SSL通信、证书认证原理和失败原因

目录 SSL通信SSL认证原理SSL证书认证失败的原因分析 SSL通信 SSL通信指的是使用SSL&#xff08;Secure Sockets Layer&#xff09;协议进行的加密通讯。SSL是一种标准的安全技术&#xff0c;用于建立一个加密链接&#xff0c;确保从用户的浏览器到服务器之间的数据传输是私密和…

iOS Airpods Pro耳机模式下视频无法播放

最近遇到了一个很奇葩的问题&#xff0c;在iOS16以及17下戴上AirPods Pro耳机就播放失败&#xff0c;只有AirPods Pro如此&#xff0c;AirPods都没问题&#xff0c;百度也是几乎没人遇到&#xff0c;后面经过多方查找&#xff0c;最终定格在Xcode项目配置中&#xff0c;在Build…

AI智能名片商城小程序构建企业级私域的IMC模型:IP、MarTech与Content的深度融合

在数字化营销的新时代&#xff0c;为企业定制开发的AI智能名片B2B2C商城小程序&#xff0c;结合我们丰富的私域运营实践&#xff0c;我们深刻领悟到构建企业级私域的三大核心要素&#xff1a;IP&#xff08;企业人设&#xff09;、MarTech&#xff08;营销技术&#xff09;和Co…