728x90
반응형
SMALL

문제 설명

정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.

만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다.


제한사항

  • 1 ≤ l ≤ r ≤ 1,000,000

입출력 예

l r result

5 555 [5, 50, 55, 500, 505, 550, 555]
10 20 [-1]

입출력 예 설명

입출력 예 #1

  • 5 이상 555 이하의 0과 5로만 이루어진 정수는 작은 수부터 5, 50, 55, 500, 505, 550, 555가 있습니다. 따라서 [5, 50, 55, 500, 505, 550, 555]를 return 합니다.

입출력 예 #2

  • 10 이상 20 이하이면서 0과 5로만 이루어진 정수는 없습니다. 따라서 [-1]을 return 합니다.
package Lv0;

import java.util.ArrayList;
import java.util.List;

/*
정수 `l`과 `r`이 주어졌을 때, `l` 이상 `r`이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.

만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다.
 */
public class H181921 {
	public boolean isValid(int n) {
		while (n > 0) {
			int digit = n % 10;
			if (digit != 0 && digit != 5) {
				return false;
			}
			n /= 10;
		}
		return true;
	}

	public int[] solution(int l, int r) {
		List<Integer> resultList = new ArrayList<>();

		for (int i = l; i <= r; i++) {
			if (isValid(i)) {
				resultList.add(i);
			}
		}

		if (resultList.isEmpty()) {
			return new int[]{-1};
		}

		int[] answer = new int[resultList.size()];
		for (int i = 0; i < resultList.size(); i++) {
			answer[i] = resultList.get(i);
		}

		return answer;
	}
}
728x90
반응형
LIST

'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글

배열 만들기 6  (0) 2023.05.06
문자열 출력하기  (0) 2023.05.06
0 떼기  (0) 2023.05.06
ad 제거하기  (0) 2023.05.06
배열 만들기 3  (0) 2023.05.06

+ Recent posts