코테 노트/프로그래머스

Level 2 문자열 압축 <2020 KAKAO BLIND RECRUITMENT > Python 3

화요밍 2021. 9. 5. 23:36
728x90
반응형

https://programmers.co.kr/learn/courses/30/lessons/60057?language=python3 

 

코딩테스트 연습 - 문자열 압축

데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문

programmers.co.kr

 

최종 코드

 

GitHub - hwayeon351/Programmers-Algorithms: 프로그래머스 알고리즘 소스 코드 모음

프로그래머스 알고리즘 소스 코드 모음. Contribute to hwayeon351/Programmers-Algorithms development by creating an account on GitHub.

github.com

def solution(s):
    answer = len(s)
    for i in range(1, len(s)//2+1):
        result = ""
        stack = []
        before = ""
        cnt = 1
        for c in s:
            if len(stack) < i: 
                stack.append(c)
            if len(stack) == i:
                now_s = "".join(stack)
                if before == now_s:
                    cnt += 1
                else:
                    if cnt == 1: 
                        result += before
                        before = now_s
                    else:
                        result += str(cnt) + before
                        cnt = 1
                        before = now_s
                stack.clear()
        if cnt > 1: result += str(cnt)
        result += before + "".join(stack)
        if len(result) < answer: answer = len(result)
    return answer

풀이 과정

풀이 시간 48분

 


참고

 

Level 3 기둥과 보 설치 <2020 KAKAO BLIND RECRUITMENT> Python 3

https://programmers.co.kr/learn/courses/30/lessons/60061?language=python3 코딩테스트 연습 - 기둥과 보 설치 5 [[1,0,0,1],[1,1,1,1],[2,1,0,1],[2,2,1,1],[5,0,0,1],[5,1,0,1],[4,2,1,1],[3,2,1,1]] [[1,0,0..

hwayomingdlog.tistory.com

 

Level 3 외벽 점검 <2020 KAKAO BLIND RECRUITMENT> Python 3

https://programmers.co.kr/learn/courses/30/lessons/60062?language=python3# 코딩테스트 연습 - 외벽 점검 레스토랑을 운영하고 있는 "스카피"는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기..

hwayomingdlog.tistory.com

  • 7. 블록 이동하기 -> 
728x90
반응형