오늘은 여기까지
[프로그래머스] 두 개 뽑아서 더하기 - 자바 Java 본문
1. 처음에 HashSet 사용해서 풀이한 경우
- HashSet -> ArrayList 또는 Array로 변환 -> Integer에서 int 타입 변환
- 어쨌든 한 단계 더 수고로운 관계로 그냥 처음부터 ArrayList에 저장하는게 나은듯
import java.util.*;
import java.io.*;
class Solution {
public int[] solution(int[] numbers) {
HashSet<Integer> set = new HashSet<>();
for(int i=0; i<numbers.length; i++) {
for(int j=i+1; j<numbers.length; j++) {
set.add(numbers[i] + numbers[j]);
}
}
Integer[] result = set.toArray(new Integer[set.size()]);
int[] answer = Arrays.stream(result).mapToInt(i->i).toArray();
Arrays.sort(answer);
return answer;
}
}
2. ArrayList에 저장하는 경우
import java.util.*;
public int[] solution(int[] numbers) {
int[] answer = {};
List<Integer> list = new ArrayList<>();
for (int i=0; i<numbers.length; i++) {
for (int j=i+1; j<numbers.length; j++) {
int r = numbers[i]+numbers[j];
if (!list.contains(r)) list.add(r);
}
}
Collections.sort(list);
answer = list.stream().mapToInt(i->i).toArray();
return answer;
}
'Problem Solving' 카테고리의 다른 글
[프로그래머스] 더 맵게 - 자바 Java (0) | 2024.07.30 |
---|---|
[프로그래머스] 택배상자 - 자바 Java (0) | 2024.07.25 |
[백준] 1253 좋다 - 자바 Java (0) | 2024.07.08 |
[프로그래머스] 프렌즈4블록 (Lv.2) - 자바 Java (0) | 2024.07.03 |
[프로그래머스] 귤 고르기 (해시 Lv.2) - 자바 Java (1) | 2024.07.01 |