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

문제📝


풀이💡

  • 이중 반복문을 통해서 두 개의 수를 더한 것을 sum에 대입한다.
  • indexOf를 통해서 리스트에 sum이 들어있지 않으면 add를 통해 추가한다.
  • get을 통해서 리스트를 가져와서 answer에 넣어준다.
  • Arrays.sort()로 정렬한다.

코드💻

/*
 * 프로그래머스 Lv1 - 두 개 뽑아서 더하기
 * 문제링크: https://programmers.co.kr/learn/courses/30/lessons/68644
*/

import java.util.*;

class Solution {
    public int[] solution(int[] numbers) {
   
        ArrayList<Integer> list = new ArrayList<Integer>();
        for(int i=0; i<numbers.length; i++)
        {
            for(int j=i+1; j<numbers.length; j++)
            {
                int sum = numbers[i] + numbers[j]; 
                if(list.indexOf(sum) <0) 
                    list.add(sum); 
            }
        }
        
        int[] answer = new int[list.size()];
        
        for(int i=0; i<list.size(); i++)
        {
            answer[i] = list.get(i); 
        }
        
        Arrays.sort(answer); 
        
        return answer;
    }
}

결과😎


느낀점👨‍💻

문제만 보면 쉽게 풀 수 있을 것 같은 문제인데 생각보다 어려웠던 것 같다. indexOf() 메소드를 오랜만에 사용을 하였고 이것으로 중복된 수가 있는지 판단할 수 있어서 해결할 수 있었다.


Sinbmil의 알고리즘 문제 코드

-> https://github.com/Sinbmil/Algorithm-Study

좋은 웹페이지 즐겨찾기