Intervalos que se intersecan

Crea una función que reciba un arreglo de intervalos y devuelva cuántos intervalos se superponen con un punto determinado.

Un intervalo se superpone con un punto determinado si el punto se encuentra dentro del intervalo o en el límite del intervalo. Por ejemplo, el punto 3 se superpone con el intervalo [2, 4] (está dentro) y con [2, 3] (está en el límite).

Para ilustrarlo:

count_overlapping([[1, 2], [2, 3], [1, 3], [4, 5], [0, 1]], 2) ➞ 3
# Esto se debe a que [1, 2], [2, 3] y [1, 3] se superponen con el punto 2.

Ejemplos

count_overlapping([[1, 2], [2, 3], [3, 4]], 5) ➞ 0

count_overlapping([[1, 2], [5, 6], [5, 7]], 5) ➞ 2

count_overlapping([[1, 2], [5, 8], [6, 9]], 7) ➞ 2

Notas

  • Cada intervalo se representa mediante un arreglo con un punto inicial y un punto final.
  • Se considera que los intervalos se intersecan incluso si solo coinciden en un punto; por ejemplo, [2, 3] y [3, 4] se intersecan en el punto 3.
  • Si te resulta útil, puedes dibujar estos intervalos sobre una recta en una hoja de papel.