[프로그래머스] 튜플 JavaScript 정규식

0

Problem Solving

목록 보기
30/49

https://school.programmers.co.kr/learn/courses/30/lessons/64065?language=javascript

결국 문제에서 원하는 바는 가장 많이 나온 숫자들 순으로 array를 만들어서 리턴하는 것

정규식으로 숫자만 뽑아낸 뒤에
Map으로 각 숫자들의 갯수들을 정리함
value를 기준으로 내림차순 정렬한뒤
key만 리턴한다.

function solution(s) {
    let table = new Map();
    
    s.match(/\d+/g).forEach((e)=>{
        table.set(e, table.get(e)+1 || 1);
    })
    
    let tableToArray = [...table];
    tableToArray.sort((a,b)=>b[1]-a[1]);
    
    let answer = tableToArray.map((e)=>parseInt(e[0]));
    return answer;
}

0개의 댓글