튜플
Updated:
이 문제는 Parsing을 어떻게 할것인가가 가장 큰 문제였던거 같다.
그래서 다음과 같이 3가지 방법을 가지고 해결을 했다
- parsing을 어떻게 할지가 가장 큰 문제
- 파싱을 하고 나면 길이순으로 오름차순 정렬
- 그다음 list의 contains메소드를 써서 중복적으로 포함이 되었는지 안되었는지를 체크를 해준다
By Java
import java.util.*;
class Solution {
public int[] solution(String s) {
s = s.substring(2,s.length()-2).replace("},{","-");
// 2부터 시작을 한거는 맨앞에 가 있어서 그 length()-2까지를 잘라야했다
// System.out.println(s);
String[] arr = s.split("-");
Arrays.sort(arr,(o1,o2)-> o1.length()-o2.length());
List<Integer> list = new ArrayList<>();
for(String temp : arr) {
String[] strArr = temp.split(",");
for(String t:strArr) {
int value = Integer.parseInt(t);
if(!list.contains(value)) { //있는지 없는지 체크
list.add(value);
}
}
}
int[] answer = {};
answer = new int[list.size()];
for(int i=0;i<list.size();i++) {
answer[i] = list.get(i);
}
return answer;
}
}
Leave a comment