题解 | #名字的漂亮度#
名字的漂亮度
https://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3
const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;
void (async function () {
const n = await readline();
const words = [];
while ((line = await readline())) {
words.push(line);
}
words.forEach((word) => {
const count = word.split("").reduce((res, cur) => {
res[cur] ? res[cur]++ : (res[cur] = 1);
return res;
}, {});
// 计算分数,重复次数多的给最高分值,依次递减
let score = 26;
console.log(
Object.entries(count)
.sort((a, b) => b[1] - a[1])
.reduce((res, cur) => {
res += cur[1] * score;
score--;
return res;
}, 0)
);
});
})();