728x90
문제 설명
정수 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 |
입출력 예 설명
입출력 예 #1
- 29183에서 1은 3번째에 있습니다.
입출력 예 #2
- 232443에서 4는 4번째에 처음 등장합니다.
입출력 예 #3
- 123456에 7은 없으므로 -1을 return 합니다.
1
2
3
4
5
6
|
class Solution {
public int solution(int num, int k) {
int answer = (num+"").indexOf(k+"");
return answer==-1 ? answer : answer+1;
}
}
|
문자열로 변경한 후 indexOf()로 위치를 구한다. indexOf()는 찾지 못하면 -1을 리턴한다. 리턴값이 1, 2, 3 인데 indexOf()는 0, 1, 2이므로 더하기 1을 해야 한다. |
1
2
3
4
5
|
class Solution {
public int solution(int num, int k) {
return (" "+num).indexOf(k+"");
}
}
|
문자열 앞에 의미 없는 문자 1개를 추가하면 찾는 index 값이 1,2,3,4가 된다. |
728x90
'프로그래머스 코딩(자바) > Level 0' 카테고리의 다른 글
Programmers Level 0 - 합성수 찾기 (2) | 2023.03.03 |
---|---|
Programmers Level 0 - 문자열 정렬하기 (2) (0) | 2023.03.03 |
Programmers Level 0 - 369 게임 (0) | 2023.03.03 |
Programmers Level 0 - 약수 구하기 (0) | 2023.03.03 |
Programmers Level 0 - 피자 나눠 먹기 (2) (0) | 2023.03.03 |