코딩 테스트 챌린지

[9월 코테 챌린지] 프로그래머스 :: (Lv0) 235개 (Lv1) 70개 (Lv2) 48개 (Lv3) 6개 // 누적 359개

  • -
728x90
반응형

2024/09/26

(Lv0) 235개 (Lv1) 70개 (Lv2) 48개 (Lv3) 6개 // 누적 359개


풀이한 문제

Lv2

  1. [3차] 파일명 정렬
 

프로그래머스

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

programmers.co.kr


문제 풀이

def solution(files):
    new_files = {i:[] for i in files}
    num = [str(i) for i in range(10)] #["0","1",....,"9"]

    for file in files:
        a = [] ; turn = 0
        ff = file.lower()
        j = ''
        
        for f in range(len(ff)):
            if ff[f] not in num:
                j += ff[f]
            else:
                a.append(j)
                j = ''
                break
        # 숫자가 하나 이상 있으므로 항상 분리될 것임
        
        for nf in range(f,len(ff)):
            if ff[nf] in num:
                j += ff[nf]
                if nf == len(ff)-1:
                    a.append(int(j))
                    left = 0
            else:
                a.append(int(j))
                left = 1
                break
        if left == 1:
            a.append(ff[nf:])
        new_files[file] = a
    
    new_files = sorted(new_files.items(), key=lambda x:(x[1][0],x[1][1]))
    new_files = dict(new_files)
    return list(new_files.keys())

 

 

Lv2. [3차] 파일명 정렬

문제 보기 :  [3차] 파일명 정렬  프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭

dtdiary.tistory.com


미완성 문제

Lv2

  1. 피로도
320x100
728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.