Lv.2 : 튜플 [JavaScript]

2024. 11. 10. 16:17Algorithm/프로그래머스

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/64065

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr


문제 풀이

function solution(s) {
    var answer = new Set();
    
    var splitStr = s.substring(2, s.length - 2).split('},{').sort((a, b) => a.length - b.length);
    var strArr = [];
    for(var i = 0; i < splitStr.length; i++){
        strArr.push(splitStr[i].split(',').map((e)=> +e));
    }
    
    for(var i of strArr){
        for(var j of i){
            answer.add(j);
        }
    }
    
    return Array.from(answer);
}

s는 {{ 로 시작하고 }} 로 끝나기 때문에 substring을 통해 둘을 제거한 뒤, },{ 로 쪼개면 각 튜플 문자열만 담긴 배열을 얻을 수 있다. 이를 튜플 원소 순서를 위해 글자수 순으로 정렬한다. => splitStr

splitStr을 돌면서 각 튜플의 원소를 strArr에 숫자 형태로 담는다. => strArr

튜플 원소 배열들이 담긴 strArr를 돌며 중복원소를 제거하기 위해 set에 넣은 후 배열로 바꾸어 리턴 

반응형