题解 | #记票统计#
记票统计
https://www.nowcoder.com/practice/3350d379a5d44054b219de7af6708894
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; // 这道题主要考map,要熟悉map的特性和api:get、set, // 能够保存插入顺序 void async function () { // Write your code here let invalidNum=0; const countByName=new Map(); while(num = await readline()){ num=parseInt(num); let nameArr=await readline(); nameArr=nameArr.split(" "); for(let item of nameArr){ countByName.set(item,0); } let voteNum=await readline(); let voteArr=await readline(); voteArr=voteArr.split(" "); for(let item of voteArr){ let curValue=countByName.get(item); if(curValue!==undefined){ countByName.set(item,curValue+1); }else{ invalidNum++; } } } for(let [key,value] of countByName){ console.log(`${key} : ${value}`); } console.log(`Invalid : ${invalidNum}`); }()