
😎풀이
ballBox
정의
lowLimit
부터 highLimit
까지 순회
2-1. 각 자릿수 합산
2-2. 번호에 맞는 박스에 공 추가
ballBox
순회
3-1. 가장 많은 공이 들어간 박스 갱신
- 박스에 있는 가장 많은 공의 수 반환
function countBalls(lowLimit: number, highLimit: number): number {
const ballBox = new Map()
for(let i = lowLimit; i <= highLimit; i++) {
let digitSum = 0
let remain = i
while(remain) {
const curDigit = remain % 10
digitSum += curDigit
remain = Math.floor(remain / 10)
}
ballBox.set(digitSum, (ballBox.get(digitSum) ?? 0) + 1)
}
let maxBallBox = 0
for(const [_, value] of ballBox) {
maxBallBox = Math.max(maxBallBox, value)
}
return maxBallBox
};