카카오 2020 문자열 압축
문제
https://programmers.co.kr/learn/courses/30/lessons/60057
풀이
def solution(s):
def check(x):
result = ""
temp = []
count = 1
for i in range(0,len(s),x):
temp.append(s[i:i+x])
for i in range(0,len(temp)-1):
if temp[i] == temp[i+1]:
count += 1
else :
result += (str(count) + temp[i]) if count > 1 else temp[i]
count = 1
result += (str(count) + temp[i]) if count > 1 else temp[i+1]
return len(result)
arr = []
arr.append(len(s))
for j in range(1,len(s)):
arr.append(check(j))
return min(arr)
주의점
5번 테스트케이스에서 계속 런타임 에러가 나서 그부분 찾는게 힘들었다.
1글자 짜리가 들어오면 arr에 append가 되지 않아 min함수에서 빈 배열이 호출되어 런타임에러가 발생한다.
따라서 arr.append(len(s))
기본값으로 문자열 길이만큼 넣어주었다
끝.
Author And Source
이 문제에 관하여(카카오 2020 문자열 압축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kjo1130/카카오-2020-문자열-압축저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)