프로그래머스 - 문자열 압축 Python

https://programmers.co.kr/learn/courses/30/lessons/60057

문제 풀이

간단한 구현 문제다. 주어진 문자열을 substr 해서 문자열 비교를 통해 같은 문자열의 개수를 찾아내 압축된 문자열 형태로 만들어준 다음 압축된 문자열의 길이를 반환해주면 되는 문제다.

문제 전체 소스

def solution(s):
answer = ''

if len(s) == 1:
return len(s)

for i in range(1, len(s)//2 + 1):
sentence = ''
count = 0
word = s[:i]
for j in range(0, len(s), i):
if s[j:j+i] == word:
count += 1
else:
if count > 1:
sentence += (str(count) + word)
else:
sentence += (word)
word = s[j:j+i]
count = 1

if count > 1:
sentence += (str(count) + word)
else:
sentence += (word)

if len(answer) == 0:
answer = sentence
elif len(answer) > len(sentence):
answer = sentence

print(answer)
return len(answer)
Share