private int[][] SplitToContinuousSequences(int[] numbers)
Debug.Assert(numbers!=null);
Debug.Assert(numbers.Any());
var res = new List<int[]>();
var currentSeq = new List<int>(new[] {numbers.First()});
foreach (var number in numbers.Skip(1))
if (number - currentSeq.Last() == 1)
res.Add(currentSeq.ToArray());
currentSeq = new List<int>(new[] {number});
res.Add(currentSeq.ToArray());