题解 | #成绩排序#

成绩排序

https://www.nowcoder.com/practice/8e400fd9905747e4acc2aeed7240978b

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // Write your code here
    let inputArr = [];
    while ((line = await readline())) {
        inputArr.push(line);
    }
    let count = inputArr[0];
    let type = inputArr[1];
    let totalArr = inputArr.slice(2);
    //构造以名字和成绩对应的对象作为元素的数组(因为键值可能重复)
    let mainArr = [];
    totalArr.forEach((el) => {
        mainArr.push({
            key: el.slice(0, el.indexOf(" ")),
            value: el.slice(el.indexOf(" ")),
        });
    });

    let temArr = [];
    mainArr.forEach(item =>{
        temArr.push(item.value)
    })
    if (type === "0") {
        //成绩降序排列
        temArr.sort((a, b) => b - a);
    } else if (type === "1") {
        temArr.sort((a, b) => a - b);
    } else {
    }
    let newArr = [...new Set(temArr)];
    newArr.forEach((grade) => {
        mainArr.forEach((item) => {
            if (item.value === grade) {
                console.log(item.key + "" + grade);
            }
        });
    });
})();

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 12:05
俺不中了,BOSS遇到了一个hr,我觉得我咨询的问题都很正常吧,然后直接就被拒绝了???
恶龙战士:你问的太多了,要不就整理成一段话直接问他,一个一个问不太好
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:30
点赞 评论 收藏
分享
点赞 评论 收藏
分享
下个早班:秒挂就是不缺人
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务