[LeetCode] 1876. Substrings of Size Three with Distinct Characters

Chobby·3일 전
1

LeetCode

목록 보기
622/652

😎풀이

  1. 중복 문자가 존재하지 않는 문자열인지 조회하는 헬퍼 함수 정의
  2. s 순회
    2-1. 세 문자 씩 조회하며, 헬퍼 함수를 통해 중복 문자의 존재 여부를 검증
    2-2. 중복 문자가 존재하지 않는 Good Substring이라면, 카운트
  3. 카운팅 수 반환
function countGoodSubstrings(s: string): number {
    let goodSubstr = 0
    for(let i = 2; i < s.length; i++) {
        const curSubstr = s.slice(i - 2, i + 1)
        if(isGoodSubstr(curSubstr)) goodSubstr++
    }
    return goodSubstr
};

function isGoodSubstr(s: string) {
    const history = new Set()
    for(const char of s) {
        if(history.has(char)) return false
        history.add(char)
    }
    return true
}
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글