티스토리 뷰
https://programmers.co.kr/learn/courses/30/lessons/60057
코딩테스트 연습 - 문자열 압축
데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문
programmers.co.kr
def solution(s):
answer = 1001
if len(s) == 1:
return 1
for size in range(1, len(s)//2 + 1):
compression = ''
piece = s[:size]
cnt = 1
for i in range(size, len(s), size):
if piece == s[i:i+size]:
cnt += 1
else:
if cnt != 1:
compression += str(cnt) + piece
else:
compression += piece
cnt = 1
piece = s[i:i+size]
if cnt != 1:
compression += str(cnt) + piece
else:
compression += piece
answer = min(answer, len(compression))
return answer
'Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스] 방금그곡 - Python, Java (0) | 2021.11.12 |
---|---|
[프로그래머스] 캐시 - Python (0) | 2021.08.19 |
[프로그래머스] 위클리 챌린지 2주차 - Python (0) | 2021.08.14 |
[프로그래머스] 가장 먼 노드 - Python (0) | 2021.08.09 |
[프로그래머스] 행렬 테두리 회전하기 - Python (0) | 2021.08.05 |