Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

ol-rlo-zl

[프로그래머스 lv2] [3차] 파일명 정렬 본문

Programmers(Python)

[프로그래머스 lv2] [3차] 파일명 정렬

ol-rlo-zl 2023. 4. 5. 15:06

문제

 

프로그래머스

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

programmers.co.kr

풀이

def solution(files):
    answer = []
    for f in files:
        head, number, tail = '', '', ''
        number_check = False
        for i in range(len(f)):
            if f[i].isdigit():
                number += f[i]
                number_check = True
            elif not number_check:
                head += f[i]
            else:
                tail += f[i:]
                break
        answer.append([head, number, tail])
    answer.sort(key=lambda x: (x[0].upper(), int(x[1])))
    return [''.join(a) for a in answer]

어려워서 다른 사람 풀이를 참고하였다...

결과