{"ScriptPreparationCode":"const nums = [1, 3, -1, -3, 5, 3, 6, 7],\r\n k = 3;","TestCases":[{"Name":"Original","Code":"function slideWindow(nums, k) {\r\n let arr = [];\r\n let j = k;\r\n for (let i = 0; i \u003C nums.length; i\u002B\u002B) {\r\n if (j \u003C= nums.length) {\r\n let slicedArr = nums.slice(i, j);\r\n arr.push(Math.max(...slicedArr));\r\n j\u002B\u002B\r\n } else {\r\n break;\r\n }\r\n }\r\n return arr;\r\n}\r\nslideWindow([1, 3, -1, -3, 5, 3, 6, 7], 3);","IsDeferred":false},{"Name":"Using Reduce","Code":"function slideWindowReduce(nums, k) {\r\n return nums.reduce((agg, cur, idx, arr) =\u003E {\r\n k \u002B idx \u003C= arr.length ?\r\n agg = [\r\n ...agg, \r\n Math.max(\r\n ...arr.slice(\r\n idx, \r\n idx \u002B k\r\n )\r\n )\r\n ] : \r\n agg = agg;\r\n return agg;\r\n }, []);\r\n}\r\nslideWindowReduce([1, 3, -1, -3, 5, 3, 6, 7], 3);","IsDeferred":false}]}