[프로그래머스] k의 개수

Seunghwa's Devlog·2023년 2월 23일
0

Algorithm

목록 보기
5/6
post-thumbnail

문제 설명

1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ i < j ≤ 100,000
  • 0 ≤ k ≤ 9

입출력 예

입출력 예 설명

입출력 예 #1

  • 본문과 동일합니다.

입출력 예 #2

  • 10부터 50까지 5는 15, 25, 35, 45, 50 총 5번 등장합니다. 따라서 5를 return 합니다.

입출력 예 #3

  • 3부터 10까지 2는 한 번도 등장하지 않으므로 0을 return 합니다.

풀이

function solution(i, j, k) {
    let newArr = []
    
    for(i; i <= j; i++) {
        newArr.push(i)
    }
   let result = newArr.join('')
   return result.split('').filter(i => i === k + '').length
}

i부터 j까지의 수들을 배열에 저장하고 join 메소드를 이용하여 수들을 합쳐준다. split 메소드를 사용하여 10의 자리 이상의 숫자인 경우 10 이면 1, 0 으로 하나씩 분리한 뒤 filter 메소드를 사용하여 k값과 같은 값을 가지는 배열의 길이를 return 한다.

profile
에러와 부딪히고 새로운 것을 배우며 성장해가는 과정을 기록합니다!

0개의 댓글