Find Latest Group of Size M LeetCode solution in JavaScript

1
var findLatestStep = function (arr, m) {
2
if (m === arr.length) return arr.length;
3
let bits = new Array(arr.length + 1).fill(true),
4
pos,
5
flag,
6
i,
7
j;
8
for (i = arr.length - 1, bits[0] = false; i >= 0; i--) {
9
(pos = arr[i]), (bits[pos] = false);
10
for (j = 1, flag = true; flag && j <= m; j++) flag = bits[pos - j];
11
if (flag && !bits[pos - m - 1]) return i;
12
for (j = 1, flag = true; flag && j <= m; j++) flag = bits[pos + j];
13
if (flag && !bits[pos + m + 1]) return i;
14
}
15
return -1;
16
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0