[프로그래머스, 68644] 두 개 뽑아서 더하기 (java)
Problem Solving/Programmers

[프로그래머스, 68644] 두 개 뽑아서 더하기 (java)

728x90

https://school.programmers.co.kr/learn/courses/30/lessons/68644

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

728x90

메모리: 72.1 MB, 시간: 1.68 ms

사용 알고리즘: 완전탐색, 자료 구조

import java.util.*;

class Solution {
    public int[] solution(int[] numbers) {
        
        // 중복 제거를 위한 set
        Set<Integer> set = new HashSet<>();
        
        for(int i = 0; i < numbers.length - 1; i++) {
            for(int j = i + 1; j < numbers.length; j++) {
                set.add(numbers[i] + numbers[j]);
            }
        }
        
        // 배열에 저장
        int[] answer = new int[set.size()];
        int idx = 0;
        for(int n : set) {
            answer[idx++] = n;
        }
        
        // 정렬
        Arrays.sort(answer);
        
        return answer;
    }
}
728x90