본문 바로가기
🫧 코테 : CodingTest

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

by 예옹이 2024. 5. 24.

 

문제

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

 

 

입출력 예

i j k result
1 13 1 6
10 50 5 5
3 10 2 0

 

 


 

 

1. i부터 j에 속하는 정수를 문자형으로 바꾸기

for(int z=i; z<=j; z++){
	String str = Integer.toString(z);

 

2. 만약 정수 k를 포함한다면 원소 split()

if(str.contains(kStr)){
	String[] arr = str.split("");

 

3. split()된 원소가 k와 동일하다면 증가

for(String arrSplit : arr){
	if(arrSplit.equals(kStr)){
		answer++;

 

 


 

 

코드

class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;
        String kStr = Integer.toString(k);
        
        for(int z=i; z<=j; z++){
            String str = Integer.toString(z);
            
            if(str.contains(kStr)){
                String[] arr = str.split("");
                
                for(String arrSplit : arr){
                    if(arrSplit.equals(kStr)){
                        answer++;
                    }
                }
            }
        }
        return answer;
    }
}

 

 

 

제가 작성한 코드는 아래에서도 확인하실 수 있습니다.

https://github.com/eonwy/programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/0/120887.%E2%80%85k%EC%9D%98%E2%80%85%EA%B0%9C%EC%88%98

 

programmers/프로그래머스/0/120887. k의 개수 at main · eonwy/programmers

🔎 coding-test (programmers) 🔍. Contribute to eonwy/programmers development by creating an account on GitHub.

github.com