배열 만들기 2
❓ 문제 설명
정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.
만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다.
❕ 입출력 예
l r result
5 555 [5, 50, 55, 500, 505, 550, 555]
10 20 [-1]
🗝️ 문제 풀이
import java.util.ArrayList;
import java.util.Collections;
class Solution {
public static int[] solution(int l, int r) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = l; i <= r; i++) {
if (check(i)) { // 0,5 체크
list.add(i);
}
}
if (list.isEmpty()) {
return new int[] { -1 };
}
Collections.sort(list); // 오름차순 정렬
int[] resultArray = new int[list.size()];
for (int i = 0; i < list.size(); i++) {
resultArray[i] = list.get(i);
}
return resultArray;
}
private static boolean check(int number) {
String strNumber = Integer.toString(number);
return strNumber.matches("[05]+");
}
}
'코딩테스트' 카테고리의 다른 글
[프로그래머스/Java] Lv.1 달리기 경주 (0) | 2024.06.17 |
---|---|
[자바/Java] 프로그래머스 코딩 기초 트레이닝 : 대소문자 바꿔서 출력하기 (1) | 2023.11.14 |
[자바/Java] 프로그래머스 코딩 기초 트레이닝 : 문자열 반복해서 출력하기 (0) | 2023.10.17 |
[자바/Java] 프로그래머스 코딩 기초 트레이닝 : a와 b 출력하기 (0) | 2023.10.17 |
[자바/Java] 프로그래머스 코딩 기초 트레이닝 : 문자열 출력하기 (0) | 2023.10.16 |