본문 바로가기
알고리즘 문제/Leetcode

[leetcode] 1052. Grumpy Bookstore Owner

by 햄과함께 2019. 6. 15.
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

 

[leetcode] 1052. Grumpy Bookstore Owner : https://leetcode.com/problems/grumpy-bookstore-owner/

[leetcode] 1052. Grumpy Bookstore Owner : https://leetcode.com/problems/grumpy-bookstore-owner/ - Grumpy Bookstore Owner.cpp

gist.github.com

320x100

댓글