1052 愛生氣的書店老闆 滑動視窗

2021-10-19 21:00:15 字數 1284 閱讀 9258

package com.heu.wsq.leetcode.slidingwindow;

/** * 1052. 愛生氣的書店老闆

* @author wsq

* @date 2021/2/23

* 今天,書店老闆有一家店打算試營業 customers.length 分鐘。每分鐘都有一些顧客(customers[i])會進入書店,所有這些顧客都會在那一分鐘結束後離開。

* 在某些時候,書店老闆會生氣。 如果書店老闆在第 i 分鐘生氣,那麼 grumpy[i] = 1,否則 grumpy[i] = 0。 當書店老闆生氣時,那一分鐘的顧客就會不滿意,不生氣則他們是滿意的。

* 書店老闆知道乙個秘密技巧,能抑制自己的情緒,可以讓自己連續 x 分鐘不生氣,但卻只能使用一次。

* 請你返回這一天營業下來,最多有多少客戶能夠感到滿意的數量。

* * 示例:

* 輸入:customers = [1,0,1,2,1,1,7,5], grumpy = [0,1,0,1,0,1,0,1], x = 3

* 輸出:16

* 解釋:

* 書店老闆在最後 3 分鐘保持冷靜。

* 感到滿意的最大客戶數量 = 1 + 1 + 1 + 1 + 7 + 5 = 16.

* */

public

class

maxsatisfied

}int ans = customernum;

for(

int i =

0; i < n; i++)}

ans = math.

max(tmp, ans);}

}return ans;

}/**

* 採用滑動視窗要進行效能優化,避免線性掃瞄求和

* @param customers

* @param grumpy

* @param x

* @return

*/public

intmaxsatisfied

(int

customers,

int[

] grumpy,

int x)

}int increase =0;

for(

int i =

0; i < x; i++

)int maxincrease = increase;

for(

int i = x; i < n; i++

)return total + maxincrease;

}}

1052 愛生氣的書店老闆

今天,書店老闆有一家店打算試營業 customers.length 分鐘。每分鐘都有一些顧客 customers i 會進入書店,所有這些顧客都會在那一分鐘結束後離開。在某些時候,書店老闆會生氣。如果書店老闆在第 i 分鐘生氣,那麼 grumpy i 1,否則 grumpy i 0。當書店老闆生氣時...

1052 愛生氣的書店老闆

今天,書店老闆有一家店打算試營業 customers.length 分鐘。每分鐘都有一些顧客 customers i 會進入書店,所有這些顧客都會在那一分鐘結束後離開。在某些時候,書店老闆會生氣。如果書店老闆在第 i 分鐘生氣,那麼 grumpy i 1,否則 grumpy i 0。當書店老闆生氣時...

1052 愛生氣的書店老闆

今天,書店老闆有一家店打算試營業customers.length分鐘。每分鐘都有一些顧客 customers i 會進入書店,所有這些顧客都會在那一分鐘結束後離開。在某些時候,書店老闆會生氣。如果書店老闆在第i分鐘生氣,那麼grumpy i 1,否則grumpy i 0。當書店老闆生氣時,那一分鐘的...