题解 | #记票统计#
记票统计
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}`);
}()


