Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- int kEmptySlots(vector<int>& bulbs, int k) {
- int n=bulbs.size();
- vector<int> days(n, INT_MAX);
- for(int i=0; i<n; i++)
- days[bulbs[i]-1] = i+1;
- int left = 0, right = left+k+1;
- int ans = INT_MAX;
- for(int i=0; right<n; i++){
- if(days[i] < days[left] || days[i] <= days[right]){
- if(days[i] == days[right])
- ans = min(ans, max(days[left], days[right]));
- left = i;
- right = left+k+1;
- }
- }
- return (ans == INT_MAX) ? -1 : ans;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment