k의 개수

jiyoung·2022년 12월 9일
0

코딩테스트

목록 보기
2/2

문제

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

다른 사람의 풀이

function solution(i, j, k) {
    let a ='';
    for(i;i<=j;i++){
        a += i;
    }
    return a.split(k).length-1;
}

정리

예를 들어 1부터 13까지의 수에서 1은 1(1), 10(1), 11(2), 12(1), 13(1)으로 총 6번 등장한다.

✨split() 함수

string.split(separator, limit)

string을 separator로 잘라서 limit 크기 이하의 배열에 잘라진 문자열을 저장하여 리턴하는 함수

✨왜 length에서 -1?

123에서 1은 1번 등장함
1로 split하면 /23 => 2덩이 그러므로 -1 해줘야 함

1234567에서 6은 1번 등장함
6으로 split 하면 12345/7 -> 2덩이 그러므로 -1 해줘야 함

345678910에서 2는 0번 등장함
2로 split 하면 345678910 -> 1덩이 그러므로 -1 해줘야 함

567891011에서 1은 3번 등장함
1로 split 하면 56789/0// -> 4덩이 그러므로 -1 해줘야 함


0개의 댓글