728x90
https://programmers.co.kr/learn/courses/30/lessons/68644?language=java
이 문제는 1단계중에서도 난이도가 비교적 쉬운 문제였습니다.
각 경우의 수로 더한 값들을 중복되지않게 Set객체를 만들어서 담아두고 set에 담겨져 있는 값들을 배열에 옮겨담아서 정렬해주면 되는문제입니다!
import java.util.*;
class Solution {
public int[] solution(int[] numbers) {
Set<Integer> set = new HashSet<Integer>();
List<Integer> list = new ArrayList<Integer>();
for(int i = 0; i < numbers.length; i++){
for(int j = i + 1; j < numbers.length; j++){
set.add(numbers[i] + numbers[j]);
}
}
int[] answer = new int [set.size()];
for(int i : set){
list.add(i);
}
for(int i = 0; i < list.size(); i++){
answer[i] = list.get(i);
}
Arrays.sort(answer);
return answer;
}
}
문제를 풀 당시에 set은 순서가 없기 때문에 어떻게 옮겨 담을까 생각하다가 상향된for문을 사용해서 list에 옮겨담고 그 list를 배열에 옮겨담았습니다!
728x90
'알고리즘 > Programmers' 카테고리의 다른 글
[Programmers]하샤드 수_자바 / 프로그래머스 연습문제(level 1) (0) | 2021.08.08 |
---|---|
[Programmers]소수 찾기_자바 / 프로그래머스 연습문제(level 1) (0) | 2021.08.07 |
[Programmers]최대공약수와 최소공배수_자바 (0) | 2021.08.04 |
[Programmers]비밀지도_자바 - 2018 카카오 블라인드 (0) | 2021.08.03 |
[Programmers]실패율_자바 (0) | 2021.08.02 |