Longest Turbulent Subarray LeetCode solution in JavaScript

1
var maxTurbulenceSize = function (arr) {
2
const len = arr.length;
3
const dp = Array.from({ length: len + 1 }, () => {
4
return new Array(2).fill(0);
5
});
6
let ans = 0;
7
for (let i = 1; i < len; i++) {
8
if (arr[i - 1] > arr[i]) {
9
dp[i][0] = dp[i - 1][1] + 1;
10
} else if (arr[i - 1] < arr[i]) {
11
dp[i][1] = dp[i - 1][0] + 1;
12
}
13
ans = Math.max(ans, ...dp[i]);
14
}
15

16
// console.log(dp);
17
return ans + 1;
18
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0