- 難度分: 1418
- 定長度的 sliding window,秒殺
class Solution {
public:
int maxSatisfied(vector<int>& customers, vector<int>& grumpy, int k) {
int n = customers.size();
int sum = 0;
for (int i = 0; i < n; i++) {
if (!grumpy[i]) {
sum += customers[i];
customers[i] = 0;
}
}
for (int i = 0; i < k; i++) {
sum += customers[i];
}
int res = sum;
for (int i = k; i < n; i++) {
sum += (customers[i] - customers[i-k]);
res = max(res, sum);
}
return res;
}
};