-
파이썬 알고리즘 - 연속된 값의 가장 큰 합, 이진 탐색일반 프로그래밍/알고리즘 2022. 5. 8. 22:28
문제 19 : 숫자로 이루어진 리스트 nums를 인자로 주면, 연속적인 숫자를 더했을 때 가장 큰 값을 반환하라.
모범 답안
def maxSubArray(nums): for x in range(1,len(nums)): nums[x] = max(nums[x], nums[x-1]+nums[x]) return max(nums)
문제 20 : 오름차순인 숫자 nums 배열과 찾아야할 target을 인자로 주면, target이 몇 번째 index인지 반환하라.
나의 답
def search(nums, target): l, r = 0, len(nums) - 1 while l <= r: mid = (l + r) // 2 if nums[mid] < target: l = mid + 1 elif nums[mid] > target: r = mid - 1 else: return mid return -1
'일반 프로그래밍 > 알고리즘' 카테고리의 다른 글
파이썬 알고리즘 - 오픈 채팅방 (0) 2022.05.19 선택 정렬 파이썬으로 구현하기 (0) 2022.05.15 파이썬 알고리즘 - 주식 가격, 같은 알파벳 묶기 (0) 2022.05.08 파이썬 알고리즘 - 재귀, binary gap (0) 2022.05.08 파이썬 알고리즘 - 합이 가장 적은경로 찾기, 0 배열끝으로 이동시키기 (0) 2022.05.01