📕 문제 설명
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
💻 입출력 예
i | j | k | result |
1 | 13 | 1 | 6 |
10 | 50 | 5 | 5 |
3 | 10 | 2 | 0 |
📚 입출력 예 설명
입출력 예 #1
- 본문과 동일합니다.
입출력 예 #2
- 10부터 50까지 5는 15, 25, 35, 45, 50 총 5번 등장합니다. 따라서 5를 return 합니다.
입출력 예 #3
- 3부터 10까지 2는 한 번도 등장하지 않으므로 0을 return 합니다.
😊 나의 답변
[1차 시도]
function solution(i, j, k) {
let count = 0;
for(i; i <= j; i++) {
[...i.toString()].forEach((v) => v === k.toString() && count++);
}
return count;
}
forEach로 배열을 순회하며 각 요소의 값이 k와 같을 때 count를 증가시켜주는 방식으로 풀이했다.
[2차 시도]
function solution(i, j, k) {
let str = '';
for(i; i <= j; i++) {
str += i;
}
return str.split(k).length - 1;
}
split()
을 활용하여 k를 기준점으로 분할하여 배열을 만들고, 그 배열의 길이를 구하면 k의 개수 + 1
이 된다.
- 1
을 하여 return 해주면 끝 👍
728x90
반응형
'프로그래머스 > Lv. 0 코딩테스트 입문' 카테고리의 다른 글
[프로그래머스] Lv.0 이진수 더하기 / JS (0) | 2023.08.14 |
---|---|
[프로그래머스] Lv.0 A로 B 만들기 / JS (0) | 2023.08.14 |
[프로그래머스] Lv.0 중복된 문자 제거 / JS (0) | 2023.08.14 |
[프로그래머스] Lv.0 삼각형의 완성조건 (1) / JS (0) | 2023.08.14 |
[프로그래머스] Lv.0 369게임 / JS (0) | 2023.08.14 |