竞赛讨论区 > 测试点详情疑问??
头像
牛客601042776号
编辑于 2021-09-23 16:25
+ 关注

测试点详情疑问??

想知道通过90%,另外的10%,在测试点详情中,有一个错误,那这个错误应该怎么去发现呢?

这个应该怎么看,我觉得应该是测试的用例,如果是这样,那怎么看输入的是什么?自己造的数据都能通过,所以想知道哪组数据我的代码过不去呀?
以下是我的代码
var numb = +readline().split(' ')
var arr = [],index=[],old =[]
for(let i=0;i<numb;i++){
    var need = readline().split(' ')
    var total = need.reduce((pre,aft) => Number(pre)+Number(aft))
    old[i+1] = need
    arr.push(total)
    index.push(i+1)
}
let len = arr.length, max;
for(let i=len - 1; i>=1;i--) {
    max = i
    for(let j=0; j<i;j++) {
        if(arr[j] < arr[max]) {
            max = j
        }
    }
    let temp = arr[i]
    arr[i] = arr[max]
    arr[max] = temp
    let ex = index[i]
    index[i] = index[max]
    index[max] = ex
}
// console.log(arr)
// console.log(index)
// console.log(old.join('-'))
// console.log(old[1])
for(let i=0; i<arr.length; i++) {
    if(arr[i] === arr[i+1]) {
//         总分相等
//         console.log(i,arr[i], arr[i+1])
//         console.log(index[i],old[index[i]], index[i+1],old[index[i+1]])
        if(old[index[i]][0] === old[index[i+1]][0]) {
//              console.log('语文相等', index[i], index[i+1])
            if(index[i] > index[i+1]) {
//                 console.log('交换位置')
                let temp = index[i]
                index[i] = index[i+1]
                index[i+1] = temp
            }
            
        }else if(old[index[i]][0] < old[index[i+1]][0]) {
//             前者语文小于后者语文,需要调换位置
                 let ex = index[i]
                 index[i] = index[i+1]
                 index[i+1] = ex
        }
    }
}


arr.length = 5
arr.forEach((k,j) => {
    console.log(index[j], k)
})


全部评论

(0) 回帖
加载中...
话题 回帖

本文相关内容

等你来战

查看全部

热门推荐