본문 바로가기
Coding Test/Programmers

[Programmers] (2018 KAKAO BLIND RECRUITMENT) Lv 2. [3차] 파일명 정렬

by song.ift 2023. 3. 3.

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

function solution(files) {
    return files.map((file) => {
        const HEAD = file.match(/\D+/g)[0],
            NUMBER = file.match(/\d+/g)[0],
            TAIL = file.slice(file.indexOf(NUMBER) + NUMBER.length, file.length);
        return { HEAD, NUMBER, TAIL };
    }).sort((a, b) => {
        const [A, B] = [a.HEAD.toLowerCase(), b.HEAD.toLowerCase()];
        if (A > B) return 1;
        else if (A === B) return (a.NUMBER * 1) - (b.NUMBER * 1);
        return -1;
    }).map((fileObj) => Object.values(fileObj).join(""));
}

GitHub : https://github.com/developeSHG/Algorithm-Baekjoon_Programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/lv2/17686.%E2%80%85%EF%BC%BB3%EC%B0%A8%EF%BC%BD%E2%80%85%ED%8C%8C%EC%9D%BC%EB%AA%85%E2%80%85%EC%A0%95%EB%A0%AC

 

GitHub - developeSHG/Algorithm-Baekjoon_Programmers: 백준 and 프로그래머스 소스코드

백준 and 프로그래머스 소스코드. Contribute to developeSHG/Algorithm-Baekjoon_Programmers development by creating an account on GitHub.

github.com

 

댓글