알고리즘/카카오
2019 카카오 개발자 겨울 인턴십 - 튜플
BSHwan
2020. 9. 5. 20:00
반응형
https://programmers.co.kr/learn/courses/30/lessons/64065
코딩테스트 연습 - 튜플
"{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1]
programmers.co.kr
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
public class Solution {
public static int[] solution(String s) {
s = s.substring(1, s.length() - 1);
String[] strArr = s.split("},");
for (int i = 0; i < strArr.length; i++) {
strArr[i] = strArr[i].replace("{", "");
strArr[i] = strArr[i].replace("}", "");
}
Arrays.sort(strArr, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return Integer.compare(o1.length(), o2.length());
}
});
ArrayList<Integer>[] list = new ArrayList[strArr.length];
for(int i=0; i<list.length; i++) list[i] = new ArrayList();
for(int i=0; i<strArr.length; i++) {
String[] arr = strArr[i].split(",");
for(int j=0; j<arr.length; j++) {
list[i].add(Integer.parseInt(arr[j]));
}
}
int[] answer = new int[strArr.length];
for (int i = 0; i < list.length; i++) {
for(int j=0; j<i; j++) {
list[i].remove(list[j].get(0));
}
answer[i] = list[i].get(0);
System.out.print(answer[i] + " ");
}
return answer;
}
}
반응형