개발공부/코딩테스트 연습문제

[프로그래머스] 두 개 뽑아서 더하기

ku-na 2022. 1. 10. 13:40

문제 설명과 제한사항

풀이

import java.util.*;

class Solution {
    public int[] solution(int[] numbers) {
        Set<Integer> tmp = new HashSet<Integer>();
        for(int i = 0; i < numbers.length - 1 ; i++){
            for(int j = i + 1; j < numbers.length; j++){
                tmp.add(numbers[i] + numbers[j]);
            }
        }
        
        int[] answer = new int[tmp.size()];
        Iterator<Integer> it = tmp.iterator();
        int i = 0;
        while(it.hasNext()){
            answer[i] = it.next();
            i++;
        }
        Arrays.sort(answer);
        
        return answer;
    }
}

++
1. Set : 중복값 x 순서 x 

   선언 : Set<Integer> tmp = new HashSet<Integer>();

   추가 : tmp.add(numbers[i] + numbers[j]);

   데이터 조회 : Iterator<Integer> it = tmp.iterator();

                     while hasNext() -> it.next();

sort