๐ ๊ณผ์
์ฒ์์ ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ์๊ฐ๋๊ฑด ๋๋ฌธ์๋ก ๋ฐ๊พธ๊ณ ๋ฌธ์/๊ฐฏ์ ๋ณ๋ก ํค/๊ฐ์ผ๋ก ๋ง๋ ๋ค์ for๋ฌธ ๋๋ฉด์ ๋น๊ตํด์ ๊ฒฐ๊ณผ ๋์ถํ๋ ๊ฑฐ์๋๋ฐ, Object.entries๋ก ๋ฌธ์์ด์ ๊ฐ๊ฐ์ ์ ๊ทผํด์ ์ ๋ ฌํ๋ค๊ฐ ๋ฉ๋ชจ๋ฆฌ ์ด๊ณผ .. ํด๊ฒฐํ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ค๊ฐ ๊ทธ๋ฅ ๊ฐ์์๊ณ ์ฒ์๋ถํฐ ๋ค์ ํ๋ค.
์ด์ ๋ฌธ์ ์ค a-z์ ์์คํค์ฝ๋๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ฐธ๊ณ ํ๋ค.
// ์ด๊ธฐ๊ฐ 0์ผ๋ก ์ฑ์, ๊ฐ ์ธ๋ฑ์ค๋ ์ํ๋ฒณ a-z๊น์ง
const result = Array(26).fill(0);
// ์
๋ ฅ ๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๋ฅผ ์ํํ๋ฉด์ ์ํ๋ฒณ๋ณ๋ก ์ฌ์ฉ๋ ํ์๋ฅผ ์ฆ๊ฐ์ํด
for (let i = 0; i < input.length; i++) {
result[input.charCodeAt(i) - 97] += 1;
}
const max = Math.max(...result);
const maxIndex = result.indexOf(max);
let checkDuple = false;
// ๋ฐฐ์ด์ ๋ค์ ๋๋ฉด์ ์ต๋ ๋น๋์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ ์๋์ง ํ์ธ
for (let j = 0; j < result.length; j++) {
if (result[j] === max && maxIndex != j) {
checkDuple = true;
break;
}
}
console.log(checkDuple ? '?' : String.fromCharCode(maxIndex + 65));
๐ . . . ์๊ฒ ๋ ์ , ํ๋ฉด์ ์๊ฐํ ์
์์ ์๋ชป ์์ฑํ ์ฝ๋์์ ๋ฌธ์์ด์ ๋น๋๋ง ๊ณ์ฐํ๋ฉด ๋๋๋ฐ ์ฌ์ฉํ๋ Object.entries(input).sort(); ๊ฐ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ ์์๋ค.
'baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 2745, 11005: ์ง๋ฒ ๋ณํ 1, 2 (node.js/JavaScript) (0) | 2024.07.16 |
---|---|
๋ฐฑ์ค_2941: ํฌ๋ก์ํฐ์ ์ํ๋ฒณ (node.js/JavaScript) (0) | 2024.07.16 |
๋ฐฑ์ค_1316: ๊ทธ๋ฃน ๋จ์ด ์ฒด์ปค (node.js/JavaScript) (0) | 2024.07.16 |
๋ฐฑ์ค_10988: ํฐ๋ฆฐ๋๋กฌ์ธ์ง ํ์ธํ๊ธฐ (node.js/JavaScript) (0) | 2024.07.16 |
๋ฐฑ์ค_2566: ์ต๋๊ฐ (node.js/JavaScript) (0) | 2024.07.16 |