두 개 뽑아서 더하기

채종윤·2023년 8월 15일
0

📔 문제 설명

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


📝 문제 풀이


💡 내 코드

import java.util.*;
class Solution {
    public int[] solution(int[] numbers) {
        List<Integer> arr = new ArrayList<>();
        for(int i =0; i<numbers.length; i++){
            for(int j =i+1; j<numbers.length;j++){
                if(!arr.contains(numbers[i]+numbers[j])){
                    arr.add(numbers[i]+numbers[j]);               
            }
        }
        }
        int[] answer = new int[arr.size()];
        
        for(int i =0; i< answer.length;i++){
            answer[i]=arr.get(i);
        }
        Arrays.sort(answer);
        return answer;
    }
}

💡 다른사람의 풀이

class Solution {
    public int[] solution(int[] numbers) {
        HashSet<Integer> set = new HashSet<Integer>();

        for(int i = 0; i < numbers.length-1; i++) {
            for(int j = i+1; j < numbers.length; j++) {
                set.add(numbers[i] + numbers[j]);
            }
        }

        ArrayList<Integer> list = new ArrayList<Integer>(set);
        int[] answer = new int[list.size()];
        for(int i = 0; i < answer.length; i++) {
            answer[i] = list.get(i);
        }
        Arrays.sort(answer);
        return answer;
    }
}
profile
안녕하세요. 백앤드 개발자를 목표로 하고 있습니다!

0개의 댓글