[JS] [编程题] 配置文件恢复
[编程题]配置文件恢复
时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32M,其他语言64M
链接:https://www.nowcoder.com/questionTerminal/ca6ac6ef9538419abf6f883f7d6f6ee5?toCommentId=10314559
来源:牛客网
题目描述
有6条配置命令,它们执行的结果分别是:
命 令 | 执 行 |
---|---|
reset | reset what |
reset board | board fault |
board add | where to add |
board delete | no board at all |
reboot backplane | impossible |
backplane abort | install first |
he he | unknown command |
注意:he he不是命令。
为了简化输入,方便用户,以“最短唯一匹配原则”匹配:
1、若只输入一字串,则只匹配一个关键字的命令行。例如输入:r,根据该规则,匹配命令reset,执行结果为:reset what;输入:res,根据该规则,匹配命令reset,执行结果为:reset what;
2、若只输入一字串,但本条命令有两个关键字,则匹配失败。例如输入:reb,可以找到命令reboot backpalne,但是该命令有两个关键词,所有匹配失败,执行结果为:unknown command
3、若输入两字串,则先匹配第一关键字,如果有匹配但不唯一,继续匹配第二关键字,如果仍不唯一,匹配失败。例如输入:r b,找到匹配命令reset board 和 reboot backplane,执行结果为:unknown command。
4、若输入两字串,则先匹配第一关键字,如果有匹配但不唯一,继续匹配第二关键字,如果唯一,匹配成功。例如输入:b a,无法确定是命令board add还是backplane abort,匹配失败。
5、若输入两字串,第一关键字匹配成功,则匹配第二关键字,若无匹配,失败。例如输入:bo a,确定是命令board add,匹配成功。
6、若匹配失败,打印“unknown command”
输入描述:
多行字符串,每行字符串一条命令
输出描述:
执行结果,每条命令输出一行
示例1
输入
reset
reset board
board add
board delet
reboot backplane
backplane abort
输出
reset what
board fault
where to add
no board at all
impossible
install first
思路
- 字符串拆分+比对,用
includes()
实现 - 本题实在简单,最多也不过两截字符串,很容易AC
题解
// 命令输入
//let line = 'reset board'
while ((line = readline())) {let lines = line.split(' ')let command = ['reset', 'reset board', 'board add', 'board delete', 'reboot backplane', 'backplane abort']let dos = ['reset what', 'board fault', 'where to add', 'no board at all', 'impossible', 'install first']if (lines.length == 1) {if ('reset'.includes(lines[0])) {console.log(dos[0])} else {console.log('unknown command')}}if (lines.length == 2) {let indexxlet flag = 0for (let i = 1; i < command.length; i++) {let com = command[i].split(' ')// console.log(com)// console.log(com[0].includes(lines[0]), com[1].includes(lines[1]))if (com[0].includes(lines[0]) && com[1].includes(lines[1])) {flag++indexx = i}}if (flag == 1) {console.log(dos[indexx])} else {console.log('unknown command')}}
}
[JS] [编程题] 配置文件恢复相关推荐
- 网易有道编程题:恢复队列
题目详情:给出一个含有n个元素的队列,其内容为1到n的无序整数,按照给定算法输出该队列,使得该队列依次输出1,2,3,-,n-1,n. 给定算法为: void outque(queue<int& ...
- [JS][编程题]括号匹配
括号匹配 题目来源:牛客网 题目链接:括号匹配 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M 题目描述 给定一个只包含括号的字符串,判断字符串是否有效.其 ...
- js用函数实现输出100以内与7有关的数_一些js编程题
数组扁平化 例: 输入:[[1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14]]]], 10] 输出:[ 1, 2, 2, 3, 4 ...
- 关于数组的js编程题(面试很常见哦)
问题1:计算给定数组 arr 中所有元素的总和 function sum(arr) {var result = 0;for(var i = 0; i < arr.length; i++){res ...
- Java 笔试强训 牛客网选择编程题 01
一.选择 1.单选 1.1.语法: public class Test3{public static void main(String[] args) {System.out.println(100 ...
- JavaScript初学者编程题(9)
JavaScript初学者编程题(9) 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个&quo ...
- JavaScript初学者编程题(2)
JavaScript初学者编程题(2) 题目:企业发放的奖金根据利润提成.利润低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分 ...
- javascript编程题_如何开始使用JavaScript进行竞争性编程
javascript编程题 by Priyabrata Biswas 通过Priyabrata Biswas 如何开始使用JavaScript进行竞争性编程 (How to get started w ...
- 多益面试题简答题和编程题解析
今日做完多益的笔试题,五道简答题对于英语渣渣的我来说其实只有三道题,回答的时候都是云里雾里的一脸懵逼,交卷后特意查了一下答案,以此铭记. 1.编程语言和脚本语言的区别 对于程序员而言,目前从事的行业基 ...
最新文章
- HAProxy入门及常用配置模拟测试
- Python快速学习09: 函数的参数
- 将用int型存储的时间转换成time时间格式笔记
- java spring eventbus_spring集成guava的event bus
- urllib2:URLError与HTTPError
- jQuery UI.Layout
- hdu3535 (分组背包,最少选一 + 最多选一 + 随意)
- JavaScript学习总结(1)——JavaScript基础
- 谷歌漏洞披露规则增加30天补丁缓冲期;Reddit 公开漏洞奖励计划
- 编译用于高放射性环境的应用程序
- break lab c语言,C语言printf详解
- 微信公众号网页授权-java开发
- python怎样计算增长率_Python令人难以置信的增长
- 云南企业私有云平台搭建解决方案、Zstack云平台管理软件介绍
- 微信小程序中 三元表达式
- 华为全连MGRE与星型拓扑MGRE(全网状与非全网状)
- 潘爱民:计算机程序的演进——我的程序人生三十年
- 加载大图片,内存溢出问题
- Accumulation Degree --- 换根dp
- iOS 截图 截取屏幕
热门文章
- 时间处理_pandas_时间处理小结
- RuntimeError: Assertion cur_target 0 cur_target n_classes failed
- pytorch中的transpose()
- 正则表达式中?=和?:和?!的理解
- LeetCode简单题之检查两个字符串数组是否相等
- LeetCode简单题之最小操作次数使数组元素相等
- CPU架构的llvm后端
- 传感器融合带来多重好处
- 2021年大数据Flink(十二):流批一体API Transformation
- Django Response对象3.4