[LeetCode] 2379. Minimum Recolors to Get K Consecutive Black Blocks

Chobby·2025년 10월 27일

LeetCode

목록 보기
723/800

😎풀이

  1. blocks 순회
    1-1. 현재 k개의 범위로 문자열 자르기
    1-2. 잘린 문자열 순회
    1-3. W가 있는 경우 B로 칠해야 하므로 카운트
    1-4. 현재까지의 최소 카운트와 비교 갱신
  2. k개의 문자열을 모두 B로 바꾸는데 필요한 최소 카운트 반환
function minimumRecolors(blocks: string, k: number): number {
    let min = Infinity
    for(let i = 0; i <= blocks.length - k; i ++) {
        const curBlocks = blocks.slice(i, i + k)
        let recolor = 0
        for(const block of curBlocks) {
            if(block === 'W') recolor++
        }
        min = Math.min(min, recolor)
    }
    return min
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글