프로그래머스 2) 튜플

유병수·2023년 5월 1일
0

튜플

문자열이 주어졌을때 처음에는 ","으로 split 하려했지만 배열 안까지 잘리게 되므로 기준을 },{ 으로 잡았다. 그러면 배열의 처음과 끝에 각각 {{ 와 }} 이 남게 되므로 두가지 다 replace 함수로 없애준다.
그러면 순수하게 배열이 남게 되는데 for문을 돌면서 int로 바꿔주면서 전부 합해줘서 answer 배열에 담고, sort 를 해준다. answer 배열의 끝에서 부터 -1 번째 값을 빼주면 정답이 나오게 된다.

import java.util.*;

class Solution {
    public int[] solution(String s) {
        
        
        String[] split = s.split("},\\{");
        split[0] = split[0].replace("{{","");
        split[split.length -1] = split[split.length -1].replace("}}","");
        
        int[] answer = new int[split.length];
        
        for(int i=0; i<split.length; i++){
            String[] numSplit = split[i].split(",");
            int sum = 0;
            for(String num : numSplit){
                int temp = Integer.parseInt(num);
                sum += temp;
            }
            answer[i] = sum;
        }
        
        Arrays.sort(answer);
        
        for(int i=answer.length -1;i>0;i--){
            answer[i] -= answer[i-1];
        }
        
        return answer;
    }
}

0개의 댓글