728x90
반응형
SMALL
문제 설명
1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 i, j, k가 매개변수로 주어질 때, i부터 j까지 k가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ i < j ≤ 100,000
- 0 ≤ k ≤ 9
입출력 예
i j k result
1 | 13 | 1 | 6 |
10 | 50 | 5 | 5 |
3 | 10 | 2 | 0 |
입출력 예 설명
입출력 예 #1
- 본문과 동일합니다.
입출력 예 #2
- 10부터 50까지 5는 15, 25, 35, 45, 50 총 5번 등장합니다. 따라서 5를 return 합니다.
입출력 예 #3
- 3부터 10까지 2는 한 번도 등장하지 않으므로 0을 return 합니다.
i 부터 j까지 k 가 들어가는 개수 찾기
첫번째 케이스 예시 1 ~ 13까지 1은 총 6번 등장 (1, 10, 11, 12, 13) // 11은 1이 두개!
i부터 j까지 반복문을 돌려 비교하기 쉽게 문자열을 바꾸고
각 숫자단어에 k 와 동일한 값이 들어있는지 확인하고 한 숫자안에 여러번 등장할 가능성이 있기에 단어를 split()으로 쪼개서 확인하기!
package Lv0;
public class H120887 {
public static int solution(int i, int j, int k) {
int answer = 0;
String K = String.valueOf(k);
for (int l = i; l <= j ; l++) {
String value = String.valueOf(l);
if (value.contains(K)) {
String[] array = value.split("");
for (String A : array) {
if (A.equals(K)) answer++;
}
}
}
return answer;
}
public static void main(String[] args){
int i = 1;
int j = 13;
int k = 1;
System.out.println(solution(i, j, k));
}
}
728x90
반응형
LIST
'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글
잘라서 배열로 저장하기 (0) | 2023.03.18 |
---|---|
문자열 밀기 (0) | 2023.03.17 |
유한소수 판별하기 (0) | 2023.03.15 |
다항식 더하기 (1) | 2023.03.15 |
7의 개수 (0) | 2023.03.13 |