[CodingTest] k의 개수

hye·2023년 4월 29일
0

AlgorithmTest

목록 보기
88/95

📖 Exam

문제 설명

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

입출력 예

ijkresult
11316
105055
31020
  • 입출력 예 #1
    본문과 동일합니다.

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

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


✍ Answer

class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;
        for(; i <= j; i++){
            String[] iStr = String.valueOf(i).split("");
            for(int c = 0; c < iStr.length; c++){
                if(iStr[c].equals(String.valueOf(k))){
                    answer++;
                }
            }
        }
        return answer;
    }
}

💡 Realization

  • 오 간단..
class Solution {
    public int solution(int i, int j, int k) {
        String str = "";
        for(int a = i; a <= j; a++) {
            str += a+"";
        }

        return str.length() - str.replace(k+"", "").length();
    }
}

참고사이트: https://school.programmers.co.kr/learn/courses/30/lessons/120887/solution_groups?language=java

profile
Junior Backend Developer

0개의 댓글