프로그래머스 튜플 JAVA

sundays·2022년 9월 17일
0

문제

튜플

풀이

풀기 전에 정렬을 해야한다

{{2}, {2, 1}, {2, 1, 3}, {2, 1, 3, 4}}
{{2, 1, 3, 4}, {2}, {2, 1, 3}, {2, 1}}
{{1, 2, 3}, {2, 1}, {1, 2, 4, 3}, {2}}

이 경우가 전부 같은 (2, 1, 3, 4) 에 해당되는 튜플이다
그러므로 정답 배열에 넣을 때 정렬 한후에 넣어야 같은 배열로 출력 될 것이다

	/**
     * s가 표현하는 튜플
     * 
     * @param s 특정 튜플을 표현하는 집합이 담긴 문자열
     * @return
     */
    public static ArrayList<Integer> solution(String s) {
        ArrayList<Integer> answer = new ArrayList<>();
        s = s.replace("{{", "").replace("}}", "");
        String[] str = s.split("\\},\\{");
        Arrays.sort(str, (o1, o2) -> {
            return o1.length() - o2.length();
        });
        for (int i = 0; i < str.length; i++) {
            String[] data = str[i].split(",");
            for (int j = 0; j < data.length; j++) {
                int num = Integer.parseInt(data[j]);
                if (!answer.contains(num)) {
                    answer.add(num);
                }
            }
        }
        return answer;
    }

전체 코드

전체 코드

profile
develop life

0개의 댓글