728x90
반응형
SMALL

알고리즘 2

프로그래머스 - 이진변환반복 (python)

0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다.x의 모든 0을 제거합니다.x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다.예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다.0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해주세요. def solution(s): answer = [] tmpStr = '' binCnt = 0 zeroCnt = 0 ..

프로그래머스 - 더 맵게 (heap) - Python

안녕하세요. 부족한 개발 실력이지만, 꾸준하게 공부한 기록을 남겨놓기 위해서 제가 풀이한 알고리즘 문제를 공유하려고 합니다. 저와 같은 초보 개발자분들에게 많은 도움이 되었으면 좋겠습니다 ! 오늘 풀어본 문제는 프로그래머스에 있는 '더 맵게(heap)' 문제입니다 . heap 자료구조를 사용하는 문제인데, 저는 처음에 그냥 list를 사용해서 문제를 풀어보았습니다. def solution(scoville, K): answer = 0 scoville.sort() if scoville[0] >= K: return answer while scoville[0] < K: if len(scoville) == 1: answer = -1 break min_scov1 = scoville.pop(0) min_scov2 =..

728x90
반응형
LIST