[프로그래머스]튜플(js)

Kyoungmoon Kim·2022년 11월 23일
0

문제 설명

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

문제 풀이

  1. 맨 앞 뒤 중괄호 두개 제거 후 사이사이 중괄호로 나눠서 배열에 넣는다.
  2. 각 인덱스마다 쉼표로 나눠서 배열안에 배열로 나눈다.
  3. 각 인덱스의 길이를 비교해 오름차순으로 정렬한다.
  4. 첫번째 항을 숫자로 바꾼 후 집어넣는다.
  5. 반복문을 돌면서 중복되지 않은 값만 숫자로 바꾼 후 집어넣는다.

풀이 코드

function solution(s) {
    var answer = [];
    let strArr= s.replace("{{", "").replace("}}", "").split("},{"); //1.
    let sortArr = [];
    for (let i = 0; i < strArr.length; i++) {
    sortArr.push(strArr[i].split(",")); //2.
    }
    sortArr.sort((a, b) => {
        return a.length-b.length;
    }); //3.
    answer.push(+(sortArr[0][0])); //4.
    for (let i = 1; i < sortArr.length; i++) {
        sortArr[i].forEach((e) => {
            if (!answer.includes(+e)){
                answer.push(+e);
            }//5.
        })
    }
    return answer;
}
profile
프론트 개발 공부를 정리한 블로그입니다.

0개의 댓글