Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

TMI개발일기

두 개 뽑아서 더하기(solution.ver) 본문

CordingTest

두 개 뽑아서 더하기(solution.ver)

JP59 2021. 3. 16. 18:48

2021.03.16 - [CordingTest] - 두 개 뽑아서 더하기

 

두 개 뽑아서 더하기

출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 월간 코드 첼린지 시즌1에서 진행한 문제다. 혼자서 풀어보고 다른 풀이를 보니 내가 한 코딩보다 간단하게 풀어쓴 코더

tmidiary.tistory.com

이전에 했던 코딩테스트는 정답은 맞지만 코드의 길이가 너무 길고 비효율적이라

 

실용적이지 못했다. 이번에는 자동으로 오름차순 정렬과 중복을 제거해주는 TreeSet클래스를 사용해서

 

코드의 길이를 줄이고 가독성을 높여봤다. 아래에 코드를 첨부한다.

 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
class Solution {
    public int[] solution(int[] numbers) {
        TreeSet<Integer> store = new TreeSet<Integer>();    
        int index=0;
        for(int i=0;i<numbers.length;i++) {
            
            for(int j=i+1;j<numbers.length;j++)
                
                store.add(numbers[i]+numbers[j]);
 
        }
        Iterator result =store.iterator();        
        int[] answer= new int[store.size()];
        
        while(result.hasNext()) {
            
            int x=(int)result.next();
            answer[index]=x;
            index++;
        }
        
        
     return answer;     
    }
 
}
cs

코드의 길이가 훨씬 짧아졌다.

'CordingTest' 카테고리의 다른 글

ID입력하기  (0) 2021.03.26
완주하지 못한 선수(Solution.ver)  (0) 2021.03.21
완주하지 못한 선수(효율성 실패)  (0) 2021.03.21
두 개 뽑아서 더하기  (0) 2021.03.16
크레인 인형뽑기  (0) 2021.03.15