Algorithm/Programmers
[프로그래머스] 숫자 찾기 - Java
뭐든 해보기
2023. 4. 21. 15:15
문제) 정수 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. 숫자가 없는 자리 수로 answer 값 초기화
2. 주어진 num을 String 배열로 변환
3. 반복문 돌면서 해당 숫자가 나오는 인덱스를 구하고, 처음 구하는 숫자만 return 되도록 break;
4. answer 리턴
class Solution {
public int solution(int num, int k) {
int answer = -1;
String sNum[] = String.valueOf(num).split("");
for(int i=0; i<sNum.length; i++) {
if(sNum[i].equals(String.valueOf(k))) {
answer = i+1;
break;
}
}
return answer;
}
}
이직 준비하느라..또 꾸준히 공부를 못했다,,
언넝 적응해서 계속 알고리즘 공부를 해야겠다.
알고리즘 마스터가 되는 그날까지...아뵤