320x100
문제 : https://leetcode.com/problems/grumpy-bookstore-owner/
슬라이딩 윈도우로 풀었다.
grumpy가 0인 경우는 X 타임과 상관없이 항상 일정하다. -> 미리 저장. (변하지 않는 값)
grumpy가 1인 경우는 X타임에 따라 달라진다. -> 슬라이딩 윈도우로 최대가 되는 값을 구한다. (변하는 값)
customers를 앞에서부터 탐색하면서 슬라이딩 윈도우 범위내에 grumpy가 1인 custmoers 배열 요소의 합을 구한다.
구한 합의 최대 값과 gumpy가 0일 때의 customers 배열의 합을 더한 값이 정답이 된다.
시간복잡도는 O(N).
소스코드 : https://gist.github.com/fpdjsns/1e7dff3e4b90c1d88e7b60a43acceeaa
320x100
'알고리즘 문제 > Leetcode' 카테고리의 다른 글
[leetcode] 1172. Dinner Plate Stacks (0) | 2019.08.30 |
---|---|
[leetcode] 1171. Remove Zero Sum Consecutive Nodes from Linked List (0) | 2019.08.28 |
[leetcode] 1028. Recover a Tree From Preorder Traversal (0) | 2019.04.20 |
[leetcode] 1020. Number of Enclaves (0) | 2019.04.08 |
[leetcode][1021] Best Sightseeing Pair (0) | 2019.03.29 |
댓글