https://app.codility.com/programmers/lessons/9-maximum_slice_problem/max_profit/
- N개의 정수로 구성된 배열 A는 주식의 일일 가격이다.
- 최대 이익 구하기
- 이익이 없는 경우 0 출력
- O(N)
def solution(A):
min = float('inf')
profit = 0
maxProfit = 0
for i in range(1, len(A)):
if min > A[i-1]: # min 값 구하기
min = A[i-1]
profit = max(0, A[i]-min) # 이익 구하기
maxProfit = max(profit, maxProfit) # 최대 이익 구하기
return maxProfit
'코딩테스트 > Codility' 카테고리의 다른 글
[codility] Lesson 10. Prime and composite numbers - CountFactors (0) | 2022.08.13 |
---|---|
[codility] Lesson 9. Maximum slice problem - MaxSliceSum (0) | 2022.08.13 |
[codility] Lesson 8. Leader - Dominator (0) | 2022.08.13 |
[codility] Lesson 7. Stacks and Queues - Nesting (0) | 2022.08.12 |
[codility] Lesson 7. Stacks and Queues - Brackets (0) | 2022.08.12 |