JSFiddle - React, Tailwind, and code Playground

by Sinh Nguyen

JavaScript

function Test(input) {
 				  input = input.sort(function(a, b) {
          return a - b;
        });
        let res = []
        let arr = []
        let prev = input[0]
         if (input.length === 0) {
            return  res
        }
        for (let i = 0; i < input.length; i++) {
        if (input[i] - prev > 1) {
            if (arr.length === 1) {
            arr.push(prev + 1)
            }
            res.push(arr)
            arr = [input[i]]
            prev = input[i]
        } else {
            arr.push(input[i])
            prev = input[i]
        }
        if (i == input.length - 1) {
            if (arr.length === 1) {
            arr.push(prev + 1)
            }
            res.push(arr)
        }
        }
        return res
    }
    
      res = Test([8,11, 10, 12, 13, 17, 19, 20])
  console.log(res)