今天牛客做的笔试题给整麻了,感觉代码逻辑和输入输出的处理都没有问题,但是测试用例一个也无法通过,找不出原因,求问各位大佬。
原题目大概是这样的:
输入描述:输入一个有序的二维数组 [[1,2,4],[2,3,7],[3,5,7],[4,5,8]]
输出描述:输出一个有序的一维数组 [1,2,2,3,3,4,4,5,5,7,7,8]
我的理解这道题就是 数组降维 + 排序,应该没错吧?所以写了这个代码(JS V8 环境):
let line
while(line = readline()){
let arr = JSON.parse(line)
let flat = function(arr){
return arr.reduce((acc,cur) => {
return Array.isArray(cur) ? acc.concat(...flat(cur)) : acc.concat(cur)
},[])
}
let res = flat(arr).sort((a,b) => a-b > 0 ? 1 : -1)
console.log(res)
}
但是通过率为 0%,最后也没拿到分。所以想问一下,有没有办法找到具体出错的原因呢?或者有哪些细节需要留意,减少像这样思路是对的但是通过率为0的情况?
对象展开运算符了解下,不用这么麻烦,两行代码搞定