๋ฐ์ํ
๋ด ํ์ด
const fs = require('fs');
let input = (fs.readFileSync('./test') + '').toString().trim();
let inputArr = input.split('');
let ans = {};
inputArr.forEach((i) => {
let ui = i.toUpperCase();
if (ans[ui]) ans[ui] += 1;
else ans[ui] = 1;
});
let a = Object.keys(ans).sort((a, b) => {
return ans[b] - ans[a];
});
if (a.length === 1) console.log(a[0]);
else {
if (ans[a[0]] !== ans[a[1]]) console.log(a[0]);
else console.log('?');
}
1. ๋ฌธ์๋ฅผ ๋ฐฐ์ด๋ก ๋ณ๊ฒฝ ๋์์ upperCase
2. ๋ฌธ์๋ฅผ key ๊ฐ์ผ๋ก ๊ฐ์ง ans dictionary ์์ฑ
3. ์ต๋๊ฐ์ ์ฐพ๊ณ ๋ ๊ฐ์ด ๊ฐ์ผ๋ฉด ? ์๋๋ฉด ๊ทธ ๊ฐ
๋ค๋ฅธ ํ์ด
const fs = require('fs');
let input = (fs.readFileSync('./test') + '').toString().toLowerCase();
let inputArr = input.split('');
const alpha = new Array(26).fill(0);
inputArr.forEach((i) => (alpha[i.charCodeAt() - 97] += 1));
const max = Math.max(...alpha);
const index = alpha.indexOf(max);
let isSame = false;
for (let i = 0; i < 26; i++) {
if (alpha[i] === max && index !== i) {
isSame = true;
break;
}
}
console.log(isSame ? '?' : String.fromCharCode(index + 65));
Ascii code๋ฅผ ์ด์ฉํ ๊ฒฝ์ฐ
๋ถ๋ช ์ ๋ถ์๋ ascii code๋ฅผ ๋๋ ์ด์ฉํ๋๋ฐ ์ด๋ฒ์๋ ์ด์ฉํ์ง ์์๋ค.
์ธ๊ฐ์(๋์) ๊ธฐ์ต๋ ฅ์ ์ ๋ง ์ ๋นํ๋ค..
'๐ ์๊ณ ๋ฆฌ์ฆ > ๋ฐฑ์ค JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] node.js / 1158 ์์ธํธ์ค ๋ฌธ์ (2) | 2021.10.12 |
---|---|
[๋ฐฑ์ค] JS/ 11399 ATM (0) | 2021.10.06 |
[๋ฐฑ์ค] JS/ 10808 ์ํ๋ฒณ ๊ฐ์ (0) | 2021.09.30 |
[๋ฐฑ์ค] JS/ 4949 ๊ท ํ์กํ ์ธ์ (0) | 2021.09.29 |
[๋ฐฑ์ค] JS/ 10798 ์ธ๋ก์ฝ๊ธฐ (0) | 2021.09.29 |
๋๊ธ