https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/submissions/
내리기 전에 팔고, 오르기 전에 사면 된다. 이 문제에서는 다음번의 등락 여부를 미리 알 수 있기 때문에 몇 번이든 거래가 가능하다.
class Solution:
def maxProfit(self, prices: List[int]) -> int:
result=0
# 값이 오르는 경우 매번 그리디 계산
for i in range(len(prices)-1):
if prices[i+1] > prices[i]:
result += prices[i+1] - prices[i]
return result
'알고리즘' 카테고리의 다른 글
분할 정복 예제 ( 괄호를 삽입하는 여러가지 방법) (0) | 2022.05.21 |
---|---|
분할 정복 (0) | 2022.05.21 |
그리디 알고리즘 (0) | 2022.05.19 |
슬라이딩 윈도우 (0) | 2022.05.17 |
이진 검색 예제, bisect_left 활용, 슬라이싱 (0) | 2022.05.16 |