문제
1157번: 단어 공부
알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
www.acmicpc.net
정답
let fs = require("fs");
let filePath = process.platform === "linux" ? "/dev/stdin" : "test.txt";
let input = fs
.readFileSync(filePath)
.toString()
.trim()
.split("")
.map(x => x.toUpperCase());
let obj = {};
input.map(x => {
obj[x] === undefined ? (obj[x] = 1) : obj[x]++;
});
let values = Object.values(obj);
let answer = values.filter(x => x === Math.max(...values));
answer.length > 1 ? console.log("?") : console.log(Object.keys(obj).find(x => obj[x] === Math.max(...values)));