본문 바로가기

CodingTest/Java

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

728x90
반응형

1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다.

정수 ijk가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요.

 

제한사항

  • 1 ≤ i < j ≤ 100,000
  • 0 ≤ k ≤ 9
class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;
        
        for(int a=i; a<=j; a++) {
            //시작값 i를 a에 담아서 숫자를 배열에 나눠서 담는다
            char[] arr = String.valueOf(a).toCharArray();
            //값이 두자리인 경우 인덱스가 arr[0] arr[1]이기 때문에 반복
            for(int num=0; num<arr.length; num++) {
                //arr의 인덱스마다 값에 k가 있는지 체크->포함되면 answer++
                if(String.valueOf(arr[num]).equals(String.valueOf(k))) {
                    answer++;
                }
            }
        }
        return answer;
    }
}
728x90
반응형