[ 프로그래머스 ] #64065 : 튜플 - JAVA

🔗 튜플

import java.util.*;

class Solution {
    public int[] solution(String s) {
        // 1. 양 끝 {{와 }} 제거
        s = s.substring(2, s.length() - 2);

        // 2. "},{" 기준으로 split
        String[] sets = s.split("\\},\\{");

        // 3. 길이 기준 정렬
        Arrays.sort(sets, Comparator.comparingInt(String::length));

        // 4. 결과 튜플 저장용
        Set<Integer> seen = new HashSet<>();
        List<Integer> result = new ArrayList<>();

        for (String set : sets) {
            for (String numStr : set.split(",")) {
                int num = Integer.parseInt(numStr);
                if (seen.add(num)) {  // 중복 아니면 추가
                    result.add(num);
                }
            }
        }

        // 5. 배열로 변환
        return result.stream().mapToInt(i -> i).toArray();
    }
}