[传智杯 #3 初赛] 终端

2023-12-05 11:45
文章标签 终端 初赛 传智杯

本文主要是介绍[传智杯 #3 初赛] 终端,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述

有一天您厌烦了电脑上又丑又没用的终端,打算自己实现一个 Terminal。

具体来说,它需要支持如下命令:

  1. touch filename:如果名为 filename 的文件不存在,就创建一个这样的文件,如果已经存在同名文件的话则不进行任何操作。

  2. rm name:删除名为 name 的文件。如果不存在这样的文件,就不进行任何操作。

  3. ls:按创建时间为顺序,显示当前已经存在的未被删除的所有文件。

  4. rename xxx yyy:将名为xxx的文件名字改为 yyy 。如果不存在这样的文件,或者已经存在文件名为 yyy 的文件,则不做任何操作。

这里所有涉及的文件名都仅由大写或者小写的英文字母构成,且文件名区分大小写。

输入格式

第一行一个整数 n ,表示总共要执行的操作数。

接下来 n 行,每行一个字符串,表示一条命令。

输出格式

对于每个 ls 命令,请输出若干行,每行一个字符串,表示一个文件,如果当前并没有任何文件,则什么都不输出。

请注意本题时限为 3s,输入输出规模较大,请注意常数因素对耗时的影响,我们不会给使用 Java 和 Python 的选手增加额外的运行时间。

输入输出样例

输入 #1复制

6
touch yyh
touch yyhtql
rename yyh yyhnb
touch qwq
rename qwq qaq
ls

输出 #1复制

yyhnb
yyhtql
qaq

说明/提示

对于 20%的数据,只存在 1,3 操作

对于另外 20% 的数据,只存在 1,2,3 操作

对于另外 20%的数据,只存在 1,3,4操作

对于 100%的数据,满足 1≤n≤1000

保证所有命令的长度不超过 2000个字符。

#include <iostream>
using namespace std;
int main(){
string a,b,c[1001];//定义两个字符串和一个字符串数组,数组用于存储
int cnt=1,n;cin>>n;while(n--){cin>>a;//注意:>> 是会过滤掉不可见字符(如 空格 回车,TAB 等)if(a=="touch"){cin>>b;c[cnt]=b;//字符串的存储cnt++;}else if(a=="rm"){cin>>b;for(int i=1;i<cnt;i++){if(c[i]==b){c[i]="";//字符串的删除break;}}}else if(a=="rename"){string temp;cin>>b>>temp;for(int i=1;i<cnt;i++){if(c[i]==b){c[i]=temp;//字符串的转换break;}}}else if(a=="ls"){for(int i=1;i<cnt;i++)if(c[i]!="")cout<<c[i]<<'\n';//循环列出当前已经存放好的字符串}}return 0;
}

这篇关于[传智杯 #3 初赛] 终端的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/457444

相关文章

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

Python使用Colorama库美化终端输出的操作示例

《Python使用Colorama库美化终端输出的操作示例》在开发命令行工具或调试程序时,我们可能会希望通过颜色来区分重要信息,比如警告、错误、提示等,而Colorama是一个简单易用的Python库... 目录python Colorama 库详解:终端输出美化的神器1. Colorama 是什么?2.

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

vscode中文乱码问题,注释,终端,调试乱码一劳永逸版

忘记咋回事突然出现了乱码问题,很多方法都试了,注释乱码解决了,终端又乱码,调试窗口也乱码,最后经过本人不懈努力,终于全部解决了,现在分享给大家我的方法。 乱码的原因是各个地方用的编码格式不统一,所以把他们设成统一的utf8. 1.电脑的编码格式 开始-设置-时间和语言-语言和区域 管理语言设置-更改系统区域设置-勾选Bata版:使用utf8-确定-然后按指示重启 2.vscode

乐凡北斗车载终端 | 车载终端功能是什么?

北斗车载终端即北斗卫星监控系统主机,主要是通过北斗卫星实现定位和导航;并通过传输网络与监控中心通信,由前端设备、传输网络、监控中心构成北斗卫星定位监控系统,实现定位跟踪及智能功能, 终端还可内置8Mbit的Flash储存器,可以记录多达15万条的行驶记录,并使用分析软件进行轨迹回放分析,由此,即使没有构建中心,也可以达到一定的车辆管理作用。 北斗车载终端指的是基于北斗卫星定位系统的卫星定位、导航

ubuntu终端实用指令

ctrl + w 往回删除一个单词,光标放在最末尾 ctrl + u 删除光标以前的字符 ctrl + k 删除光标以后的字符 ctrl + a 移动光标至的字符头 ctrl + e 移动光标至的字符尾 ctrl + shift + c 复制 ctrl + shift + v 粘贴 ctrl + l 清屏

百度之星 2015 初赛(1) 1002 找连续数

找连续数      Accepts: 401      Submissions: 1911  Time Limit: 2000/1000 MS (Java/Others)      Memory Limit: 32768/32768 K (Java/Others) Problem Description 小度熊拿到了一个无序的数组,对于这个数组,小度熊想知道是

百度之星初赛1002(二分搜索)

序列变换    Accepts: 816    Submissions: 3578  Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 给定序列 A={A1,A2,...,An} , 要求改变序列A中

百度之星初赛1006(计算几何:能包含凸包的最小矩形面积)

矩形面积    Accepts: 717    Submissions: 1619  Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 小度熊有一个桌面,小度熊剪了很多矩形放在桌面上,小度熊想知道能把这些

Cmd终端

组策略停止更新 windows用户的分类 system(系统用户) administrator(管理员用户) 普通用户 访客用户 网络管理类命令练习 ping:用于测试网络连接是否正常。通过发送ICMP(Internet Control Message Protocol)回显请求消息到目标主机并等待回显应答,从而测试和度量与目标主机往返时延。 netstat:显示网络连接、路由表、接口状态等