题解 | #配置文件恢复#
配置文件恢复
https://www.nowcoder.com/practice/ca6ac6ef9538419abf6f883f7d6f6ee5
//用filter过滤出符合条件的
function fn(str){
let unknown = 'unknown command'
if(str === 'he he'){
return unknown
}
let arr=str.split(' ')
let len = arr.length
if(len === 1){ //输入一个字符
if('reset'.slice(0,str.length)===str){
return 'reset what'
}else {
return unknown
}
}else if(len === 2){ //输入两个字符
let map = [['reset','board','board fault'],
['board','add','where to add'],
['board','delete','no board at all'],
['reboot','backplane','impossible'],
['backplane','abort','install first']]
let len1=arr[0].length,len2=arr[1].length
let filter = map.filter((ele)=>ele[0].slice(0,len1)===arr[0] && ele[1].slice(0,len2)===arr[1]) //模糊匹配
if(filter.length ===0){
return unknown
}else if(filter.length === 1){ //只有长度为1才符合情况
return filter[0][2]
}else {
return unknown
}
}else { //异常情况
return unknown
}
}
let input
while(input=readline()){
console.log(fn(input))
}
let unknown = 'unknown command'
if(str === 'he he'){
return unknown
}
let arr=str.split(' ')
let len = arr.length
if(len === 1){ //输入一个字符
if('reset'.slice(0,str.length)===str){
return 'reset what'
}else {
return unknown
}
}else if(len === 2){ //输入两个字符
let map = [['reset','board','board fault'],
['board','add','where to add'],
['board','delete','no board at all'],
['reboot','backplane','impossible'],
['backplane','abort','install first']]
let len1=arr[0].length,len2=arr[1].length
let filter = map.filter((ele)=>ele[0].slice(0,len1)===arr[0] && ele[1].slice(0,len2)===arr[1]) //模糊匹配
if(filter.length ===0){
return unknown
}else if(filter.length === 1){ //只有长度为1才符合情况
return filter[0][2]
}else {
return unknown
}
}else { //异常情况
return unknown
}
}
let input
while(input=readline()){
console.log(fn(input))
}
