반응형
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;
}
}
반응형
'알고리즘 > 카카오' 카테고리의 다른 글
2018 KAKAO BLIND RECRUITMENT - [3차] n진수 게임 (0) | 2020.09.18 |
---|---|
2020 카카오 인턴십수식 - 최대화 (0) | 2020.09.15 |
2020 KAKAO BLIND RECRUITMENT - 괄호 변환 (0) | 2020.08.30 |
키패드 누르기 (0) | 2020.08.20 |
오픈채팅방 (0) | 2020.05.29 |