Level. 0
문제
정수 start_num와 end_num가 주어질 때, start_num에서 end_num까지 1씩 감소하는 수들을 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요.
* 제한사항
- 0 ≤ end_num ≤ start_num ≤ 50
풀이. 1 - iterate
import java.util.stream.*;
class Solution {
public int[] solution(int start, int end_num) {
return IntStream.iterate(start, i-> i>=end_num, i-> i-1).toArray();
}
}
풀이. 2 - rangeClosed
import java.util.stream.*;
class Solution {
public int[] solution(int start, int end_num) {
return IntStream.rangeClosed(-start,-end_num).map(i->-i).toArray();
}
}
효율성은 별로지만 rangeClosed를 사용한 풀이가 독특해서 정리해 보았다.
https://school.programmers.co.kr/learn/courses/30/lessons/181899
'Algorithm > Programers - Java' 카테고리의 다른 글
[프로그래머스(Java)] 첫 번째로 나오는 음수 / findFirst(), orElse() (0) | 2024.02.04 |
---|---|
[프로그래머스(Java)] 뒤에서 5등 위로 / skip (0) | 2024.02.04 |
[프로그래머스(Java)] 배열 비교하기 / Integer.compare (0) | 2024.01.28 |
[프로그래머스(Java)] 글자 이어 붙여 문자열 만들기 / StringBuilder (0) | 2024.01.27 |
[프로그래머스(Java)] 순서 바꾸기 (0) | 2024.01.21 |