Удаление элементов массива B, идущих подряд в массиве A

Нужно удалить элементы массива B, идущие подряд в массиве A. Мне удалось дойти умом до контрольной точки в виде просто удаления элементов массива B из A.

Код:

let A = [|1;2;3;4;5|]

let B = [|1;2;0;4;5|]

let C = [|1;2;5;6;7|]

let isContains digit array = 
    array|> Array.tryFind(fun elem -> if elem = digit then true else false)

let InteractArr (array:int[]) =
    array|>Array.filter(fun elem -> (isContains elem A).IsSome) |> Array.distinct

let Interact = InteractArr B//результат - 1, 2, 4, 5

//удаление элементов из Interact, которые совпадают с C.

let DeletNumArr (array:int[]) =
   array|>Array.filter(fun elem -> (isContains elem C).IsNone) |> Array.distinct

let Resultate = DeletNumArr Interact//результат - 4, а нужно, чтобы выводило 4, 5, т.к. подряд идут только 1 и 2.

введите сюда описание изображения


Ответы (0 шт):