题解 | #坐标移动#
坐标移动
http://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
本题一个使用for+switch实现非常简单. 相当于中等难度的题. 想来这题放在较难里面也是因为有一些其他细节容易 出错
(1)过滤无效值
(2)注意slice(start, end)和substr(start, length)用法的不同
(3)filter(function)
while(line = readline()) {
arr = line.split(';').filter(e=>{
// 过滤undefined, null, ''
return e && e.trim()
})
var x = 0
var y = 0
for(let i of arr){
if(isNaN(Number(i.substr(1)))){
continue
}
switch(i.substr(0,1)) {
case 'A': x-=Number(i.slice(1));break
case 'D': x+=Number(i.slice(1));break
case 'S': y-=Number(i.slice(1));break
case 'W': y+=Number(i.slice(1));break
}
}
console.log(x+','+y)
}
