본문 바로가기
반응형

카카오 코딩테스트8

[파이썬🐍] 프로그래머스 : 문자열 압축 def solution(s): answer = len(s) for step in range(1,len(s)//2+1): compressed="" prev=s[0:step] count=1 for j in range(step,len(s),step): if prev==s[j:j+step]: count+=1 else: compressed+=str(count)+prev if count>=2 else prev prev=s[j:j+step] count=1 compressed+=str(count)+prev if count>=2 else prev answer=min(answer,len(compressed)) return answer 2021. 5. 7.
[파이썬🐍] 프로그래머스 : [1차] 다트 게임 def solution(dartResult): score = [] n = '' for i in dartResult: if i.isnumeric(): n += i elif i == 'S': score.append(int(n) ** 1) n = '' elif i == 'D': score.append(int(n) ** 2) n = '' elif i == 'T': score.append(int(n) ** 3) n = '' elif i == '*': if len(score) > 1: score[-2] *= 2 score[-1] *= 2 elif i == '#': score[-1] *= -1 return sum(score) 2021. 5. 7.
[파이썬🐍] 프로그래머스 : [1차] 비밀지도 def solution(n, arr1, arr2): answer=[] for i in range(n): arr1[i]=format(arr1[i],'b') arr2[i]=format(arr2[i],'b') k='' a=str(int(arr1[i])+int(arr2[i])) if len(a) 2021. 5. 7.
[파이썬🐍] 프로그래머스 : 튜플 기본적인 파이썬 함수들을 잘 알고 있으면 쉬운 문제였다. 나는 이 문제를 풀면서 eval()이라는 함수를 처음 접하게 되었다. eval()은 ""를 없애주고 본연의 값만 가져온다 def solution(s): #"{{1,2,3},{2,1},{1,2,4,3},{2}}" answer=[] s = list(eval(s[1:-1])) #[{1, 2, 3}, {1, 2}, {1, 2, 3, 4}, {2}].......1 if len(s) == 1: answer.append(s[0]) else: temp=sorted(s,key=lambda x: len(x)) #[{2}, {1, 2}, {1, 2, 3}, {1, 2, 3, 4}].......2 temp=[list(i) for i in temp] #[[2], [1, .. 2021. 4. 16.
반응형