✏️ 문제 설명
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
✏️ code
📌 set.stream().sorted().mapToInt(i -> i).toArray();
- set.stream(): set 컬렉션을 스트림으로 변환
- sorted(): 스트림 요소 정렬
- mapToInt(i -> i): Stream<Interger>를 IntStream으로 변환. 즉, 스트림 각 요소를 int형으로 변환
- toArray(): IntStream의 요소들을 배열 int[]로 변환
package programmers;
import java.util.*;
public class P68644 {
public int[] solution(int[] numbers) {
HashSet<Integer> set = new HashSet<>();
int len = numbers.length;
for (int i = 0; i < len-1; i++) {
for (int j = i+1; j < len; j++) {
set.add(numbers[i]+numbers[j]);
}
}
int[] result = set.stream().sorted().mapToInt(i -> i).toArray();
return result;
}
}
반응형