Files
obsidian/АиСД/Задачи/LeetCode/Longest Subarray of 1’s After Deleting One Element.md
T
roma-dxunvrs c90a404c40
deploy / Pull and Restart (push) Successful in 18s
Refactor
2026-09-19 19:20:43 +03:00

25 lines
757 B
Markdown

Leetcode #1494 | #Medium | [[Скользящее окно]]
## Идея
Скользящее окно с счетчиком нулей, res = max(res, r-l) <- не делаем +1 так как один символ надо удалить по-любому
## Big-O
- Время ```O(N)```
- Память ```O(N)```
## Код
```Java
class Solution {
public int longestSubarray(int[] nums) {
int l = 0;
int zeroCount = 0;
int res = 0;
for (int r = 0; r < nums.length; r++) {
if (nums[r] == 0) zeroCount++;
while (zeroCount > 1) {
if (nums[l] == 0) zeroCount--;
l++;
}
res = Math.max(res, r - l);
}
return res;
}
}
```