Find Good Days to Rob the Bank LeetCode solution in JavaScript
1var goodDaysToRobBank = function (security, time) {2let decrease = [0];3let increase = Array(security.length).fill(0);45// Prefix6for (let i = 1; i < security.length; i++) {7if (security[i] <= security[i - 1]) decrease[i] = decrease[i - 1] + 1;8else decrease[i] = 0;9}1011// Suffix12for (let j = security.length - 2; j >= 0; j--) {13if (security[j] <= security[j + 1]) increase[j] = increase[j + 1] + 1;14else increase[j] = 0;15}1617let output = [];18for (let k = 0; k < security.length; k++) {19let left = decrease[k];20let right = increase[k];21if (left >= time && right >= time) output.push(k);22}2324return output;25};