알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다.
첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다.
Mississipi
?
zZa
Z
baaa
A
let fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split('');
//const input = fs.readFileSync('./temp.txt').toString().split('');
let alphaArray = new Array(26).fill(0);
for (let i = 0; i < input.length; i++) {
alphaArray[input[i].toUpperCase().charCodeAt() - 65] += 1;
}
let point = 0;
let maxNumber = Math.max.apply(null, alphaArray);
let length = 0;
for (let i = 0; i < 26; i++) {
if (alphaArray[i] == maxNumber) {
length += 1;
point = i;
}
}
if (length > 1) {
console.log('?');
} else {
console.log(String.fromCharCode(point + 65));
}