Divide Array in Sets of K Consecutive Numbers LeetCode solution in JavaScript
1var isPossibleDivide = function (nums, k) {2if (nums.length % k) {3return false;4}56nums.sort((a, b) => a - b);78let numberOfArrays = nums.length / k,9index = 0,10dp = Array(numberOfArrays)11.fill(null)12.map(() => []);1314dp[0].push(nums[0]);1516for (let i = 1; i < nums.length; i++) {17if (nums[i] === nums[i - 1]) {18if (index === numberOfArrays - 1) {19return false;20}21index++;22} else {23index = 0;24while (dp[index].length === k) {25index++;26}27}28if (dp[index].length && dp[index].at(-1) + 1 != nums[i]) {29return false;30}31dp[index].push(nums[i]);32}3334return true;35};