-
[프로그래머스] 배열 만들기 3알고리즘 노트 2023. 10. 23. 10:35
배열 하나를 가지고 두 가지 조건에 맞추어 새로운 배열을 만들어내면 되는 문제입니다.
결국 두 조건으로 두 개의 배열을 만들고 합쳐주면 됩니다.
[문제풀이]
1. Arrays.copyOfRange 함수를 이용해 배열 1, 배열 2를 만들어줍니다.
2. 배열1과 2를 합치기 위해 Stream.of()함수를 가지고 스트림으로 만들어 줍니다.
3. flatMapToInt()를 통해 IntStream으로 변경한 이후 toArray를 이용해 배열로 반환해줍니다.
여기에서 해당 코드의 문제점은 Stream 클래스를 선언적으로 이용했다는 점입니다.
다음과 같이 수정이 가능할 것 같습니다.
풀리는 방식은 동일합니다.
다만 Stream.of()를 통해 두 배열을 하나의 스트림으로 만들 것이 아니라, intervals배열 자체를 stream으로 변환하고 거기에서 조건에 따라 배열을 만들어 내면 됩니다.
'알고리즘 노트' 카테고리의 다른 글
[프로그래머스] 배열 조각하기 (0) 2023.10.23 [프로그래머스] 2의 영역 (0) 2023.10.23 [프로그래머스] 카운트 다운 (0) 2023.10.20 [프로그래머스] 글자 지우기 (0) 2023.10.20 [프로그래머스] 세로 읽기 (0) 2023.10.19