배열 만들기 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, CS, Dev' 카테고리의 다른 글
선택 정렬(Selection Sort) (3) | 2024.06.13 |
---|---|
프레임워크와 라이브러리의 차이는? (0) | 2024.03.04 |
[자료구조] 자료구조의 의미, 특징, 분류 (1) | 2024.02.29 |
[Java] ""(큰따옴표)와 ''(작은따옴표)의 차이 (0) | 2023.11.27 |
트랜잭션(Transaction)이란? (3) | 2023.11.27 |