문자열이 주어졌을때 처음에는 ","으로 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;
}
}