第一行输入一个整数
代表候选人数。
第二行输入
个长度为
、仅由大写字母构成的字符串
,代表候选人的名字。保证候选人的名字互不相同。
第三行输入一个整数
代表投票人数。
第四行输入
个长度为
、仅由大写字母构成的字符串
,代表投票内容。
对于每一位候选人,新起一行。先输出其名字,随后输出一个空格、一个冒号、一个空格作为间隔,最后输出其获得的票数。形如
,其中
是候选人的名字,
是候选人的票数。
最后一行以相同的格式输出无效票的数量。形如
,其中
是无效票的数量。
4 A B C D 8 A D E CF A GG A B
A : 3 B : 1 C : 0 D : 1 Invalid : 3
在这个样例中,
三张票是无效的。
var num1 = await readline(); var str1 = await readline(); var num2 = await readline(); var str2 = await readline(); var arr1 = str1.split(" "); var arr2 = str2.split(" "); var obj = {}; var invalid = 0; arr1.forEach(v=>{ obj[v] = 0; }) arr2.forEach(v=>{ if(arr1.includes(v)){ obj[v]++; }else{ invalid++; } }) for(var k in obj){ console.log(`${k} : ${obj[k]}`); } console.log(`Invalid : ${invalid}`);
readline(); const candicates = readline().split(' '); readline(); const votes = readline().split(' '); let res = {} candicates.forEach(c => { res[c] = 0; }) res.Invalid = 0 votes.forEach(c => { if(res[c] !== undefined){ res[c] += 1; }else{ res.Invalid +=1; } }) for(let key in res){ console.log(`${key} : ${res[key]}`) }
const res = []; function func(line) { res.push(line); // 如果数组长度等于4,进入计算 if (res.length === 4) { const hNum = res[0]; const hArr = res[1].split(" "); const tNum = res[2]; const tArr = res[3].split(" "); const map = {}; for (let t of tArr) { // 开始统计票数 const key = hArr.includes(t) ? t : "Invalid"; map[key] ? map[key]++ : (map[key] = 1); } // 开始打印结果 for (let h of hArr) { console.log(h + " : " + (map[h] || 0)); } console.log("Invalid : " + (map["Invalid"] || 0)); } } while ((line = readline())) { func(line); }