[LeetCode] 2283. Check if Number Has Equal Digit Count and Digit Value

Chobby·1일 전
1

LeetCode

목록 보기
704/710

😎풀이

  1. num 순회
    1-1. 각 숫자의 빈도 저장
  2. num 순회
    2-1. 각 인덱스의 빈도와 해당 인덱스에 할당된 숫자가 일치하는지 비교교
function digitCount(num: string): boolean {
    const frequent = new Map()
    for(const char of num) {
        const digit = Number(char)
        frequent.set((digit), (frequent.get(digit) ?? 0) + 1)
    }
    for(let i = 0; i < num.length; i++) {
        if(!frequent.has(i)) {
            if(num[i] !== '0') return false
            continue
        }
        if(frequent.get(i) !== Number(num[i])) {
            return false
        }
    }
    return true
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글