愛生氣的書店老闆

2021-10-22 04:11:49 字數 878 閱讀 9512

空閒時間,又翻看了一下 leetcode 上的這道題,題目如下:

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

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

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

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

解題技巧就是固定視窗從頭到尾依次挪動,具體分4個步驟:

1.求出未使用x時的滿意數量max;

2.求出從下標0開始到x-1的最大值;

3.依次先後挪動,求出x範圍內的最大值;

4.求出使用x的最多滿意數量(max+maxx)

具體**如下:

class solution 

}//求出剛開始就使用x的值

int maxx = 0;

for (int i = 0; i < grumpy.length; i++)

}//依次將x視窗往後挪,並比較求得最大值

int tempx = maxx;

for (int i = x; i < grumpy.length; i++)

//要被x包裹的數

if(grumpy[i]==1)

maxx = math.max(maxx,tempx);

}return max+maxx;

}}

LeetCode 愛生氣的書店老闆

今天,書店老闆有一家店打算試營業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。當書店老闆生氣時...