Jin's Dev Story

[프로그래머스 Lv0.] 120904번 숫자 찾기 (JAVA) 본문

Coding Test/프로그래머스[JAVA]

[프로그래머스 Lv0.] 120904번 숫자 찾기 (JAVA)

woojin._. 2023. 7. 21. 17:57

1. 문제

문제 설명

정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.

제한사항

  • 0 < num < 1,000,000
  • 0 ≤ k < 10
  • num에 k가 여러 개 있으면 가장 처음 나타나는 자리를 return 합니다.

입출력 예

num k result
29183 1 3
232443 4 4
123456 7 -1

2. 풀이과정

[첫 번째 방법]

class Solution {
    public int solution(int num, int k) {
        int answer = 0;
  
        String[] s = String.valueOf(num).split("");
        
        for(int i=0; i<s.length; i++) {
            if(s[i].equals(String.valueOf(k))) {
                answer = i + 1;
                break;
            } else answer = -1;
        }
        
        return answer;
    }
}

[두 번째 방법]

  • "-"를 사용한 이유는 인덱스 0부터가 아닌 1부터 카운트하기 위해
class Solution {
    public int solution(int num, int k) {

        return ("-" + num).indexOf(String.valueOf(k));
    }
}