Skip to content

Commit 8e27e22

Browse files
committed
Add solution #1493
1 parent 97206ac commit 8e27e22

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,7 @@
174174
1486|[XOR Operation in an Array](./1486-xor-operation-in-an-array.js)|Easy|
175175
1491|[Average Salary Excluding the Minimum and Maximum Salary](./1491-average-salary-excluding-the-minimum-and-maximum-salary.js)|Easy|
176176
1492|[The kth Factor of n](./1492-the-kth-factor-of-n.js)|Medium|
177+
1493|[Longest Subarray of 1's After Deleting One Element](./1493-longest-subarray-of-1s-after-deleting-one-element.js)|Medium|
177178
1496|[Path Crossing](./1496-path-crossing.js)|Easy|
178179
1502|[Can Make Arithmetic Progression From Sequence](./1502-can-make-arithmetic-progression-from-sequence.js)|Easy|
179180
1598|[Crawler Log Folder](./1598-crawler-log-folder.js)|Easy|
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/**
2+
* 1493. Longest Subarray of 1's After Deleting One Element
3+
* https://leetcode.com/problems/longest-subarray-of-1s-after-deleting-one-element/
4+
* Difficulty: Medium
5+
*
6+
* Given a binary array nums, you should delete one element from it.
7+
*
8+
* Return the size of the longest non-empty subarray containing only 1's in the
9+
* resulting array. Return 0 if there is no such subarray.
10+
*/
11+
12+
/**
13+
* @param {number[]} nums
14+
* @return {number}
15+
*/
16+
var longestSubarray = function(nums) {
17+
const grouped = nums.join('').split('0').map(s => s.length);
18+
let max = 0;
19+
20+
for (let i = 0; i < grouped.length; i++) {
21+
max = Math.max(
22+
max,
23+
(grouped[i - 1] ?? 0) + grouped[i],
24+
grouped[i] + (grouped[i + 1] ?? 0)
25+
);
26+
}
27+
28+
return max - (nums.includes(0) ? 0 : 1);
29+
};

0 commit comments

Comments
 (0)