❗ 조건
조건1. 가장 많이 팔린 책이 여러 개일 경우에는 사전 순으로 가장 앞서는 제목을 출력
❗ 풀이
let [n, ...input] = require('fs').readFileSync('dev/stdin').toString().trim().split('\n').sort();
let countObject = {};
input.forEach(element => {
countObject[element] == null ? countObject[element] = 1 : countObject[element] += 1
});
let max = Math.max(...Object.values(countObject));
console.log(Object.keys(countObject).find(key => countObject[key] === max))
1. 처음 input 값 생성 시 바로 사전순으로 정렬하여 정의함
2. input값을 forEach를 통하여 반복
3. 반복문 안에서 만약 object에 element값이 없다면 key 값을 생성하고 있으면 해당 key값의 value값에 1을 더함
4. 반복문을 빠져나와 해당 객체의 value값 중 가장 큰 값을 찾음
5. 가장 큰 값을 찾고 해당하는 값과 동일한 value값의 key값을 찾아서 console.log를 찍으면 끝
'알고리즘 풀이' 카테고리의 다른 글
[JAVASCRIPT] 백준 1032번 문제 풀이 (0) | 2023.02.23 |
---|---|
[JAVASCRIPT] 백준 4949번 문제 풀이 (0) | 2023.02.10 |
[JAVASCRIPT] 백준 1439번 문제 풀이 (0) | 2023.01.31 |
[JAVASCRIPT] 백준 14425번 문제 풀이 (3) | 2023.01.19 |
[JAVASCRIPT] 백준 1181번 문제 풀이 (0) | 2022.12.27 |