Leet Code Daily 2024-06-21 - Grumpy Bookstore Owner
Solution
Code
● ● ●c++class Solution {
public:
int maxSatisfied(vector<int>& customers, vector<int>& grumpy, int minutes) {
int n = customers.size(), already_satisfied = 0;
vector<int> rest;
for (int i = 0; i < n; i++) {
if (grumpy[i] == 0) {
already_satisfied += customers[i];
rest.push_back(0);
} else {
rest.push_back(customers[i]);
}
}
int max_rest = 0;
for (int i = 0, j = 0, current_rest = 0; i < n; i++) {
while (j < n && j < i + minutes) {
current_rest += rest[j++];
}
max_rest = max(max_rest, current_rest);
current_rest -= rest[i];
}
return already_satisfied + max_rest;
}
};