๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”‘ ์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€ JS

[๋ฐฑ์ค€] JS/ 1157 ๋‹จ์–ด ๊ณต๋ถ€

by Tamii 2021. 10. 5.
๋ฐ˜์‘ํ˜•

๋‚ด ํ’€์ด

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๋ฅผ ๋‚˜๋„ ์ด์šฉํ–ˆ๋Š”๋ฐ ์ด๋ฒˆ์—๋Š” ์ด์šฉํ•˜์ง€ ์•Š์•˜๋‹ค.

์ธ๊ฐ„์˜(๋‚˜์˜) ๊ธฐ์–ต๋ ฅ์€ ์ •๋ง ์‹ ๋น„ํ•˜๋‹ค..

 

 

๋Œ“๊ธ€